Activepieces项目Docker-Compose部署指南
2025-07-06 01:17:40作者:霍妲思
Activepieces是一个开源的工作流自动化平台,通过Docker-Compose可以快速部署其完整运行环境。本文将详细解析官方提供的docker-compose.yml配置文件,帮助开发者理解其架构设计并完成部署。
核心服务架构
Activepieces的Docker-Compose配置采用了三服务架构:
- 主应用服务:Activepieces核心业务逻辑
- PostgreSQL数据库:数据持久化存储
- Redis服务:缓存和消息队列处理
这种架构设计体现了现代Web应用的典型分层模式,确保了系统的可扩展性和稳定性。
配置文件深度解析
主应用服务配置
activepieces:
image: ghcr.io/activepieces/activepieces:0.64.2
container_name: activepieces
restart: unless-stopped
ports:
- '8080:80'
depends_on:
- postgres
- redis
env_file: .env
volumes:
- ./cache:/usr/src/app/cache
networks:
- activepieces
关键配置点:
- 使用官方0.64.2版本镜像
- 自动重启策略确保服务高可用
- 将容器80端口映射到主机8080端口
- 通过.env文件管理环境变量
- 挂载本地cache目录实现缓存持久化
- 依赖PostgreSQL和Redis服务
数据库服务配置
postgres:
image: 'postgres:14.4'
container_name: postgres
restart: unless-stopped
environment:
- 'POSTGRES_DB=${AP_POSTGRES_DATABASE}'
- 'POSTGRES_PASSWORD=${AP_POSTGRES_PASSWORD}'
- 'POSTGRES_USER=${AP_POSTGRES_USERNAME}'
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
- activepieces
特点:
- 使用PostgreSQL 14.4官方镜像
- 数据库配置通过环境变量动态注入
- 数据卷确保数据库持久化存储
- 与主应用共享网络
Redis服务配置
redis:
image: 'redis:7.0.7'
container_name: redis
restart: unless-stopped
volumes:
- 'redis_data:/data'
networks:
- activepieces
特点:
- 使用Redis 7.0.7官方镜像
- 数据卷持久化Redis数据
- 同样采用自动重启策略
部署实践指南
准备工作
- 确保已安装Docker和Docker-Compose
- 创建项目目录并保存docker-compose.yml文件
- 准备.env环境变量文件,需包含以下关键配置:
- AP_POSTGRES_DATABASE
- AP_POSTGRES_PASSWORD
- AP_POSTGRES_USERNAME
启动服务
docker-compose up -d
此命令将:
- 创建专用网络activepieces
- 拉取并启动三个服务容器
- 在后台运行(-d参数)
服务验证
- 访问http://localhost:8080确认主应用是否运行
- 检查容器状态:
docker-compose ps
数据持久化
配置中使用了两种持久化方式:
- 命名卷:用于PostgreSQL和Redis数据
- postgres_data
- redis_data
- 绑定挂载:用于应用缓存
- ./cache:/usr/src/app/cache
高级配置选项
配置文件中注释掉了一个重要选项:
## privileged: true
此选项仅在特定执行模式下需要:
- 使用AP_EXECUTION_MODE为SANDBOXED时
- 旧版Activepieces升级时
启用前请务必查阅相关文档了解潜在影响。
维护与升级
-
日志查看:
docker-compose logs -f
-
服务停止:
docker-compose down
-
版本升级: 修改image标签版本号后重新启动
总结
Activepieces的Docker-Compose配置体现了现代化部署的最佳实践:
- 服务隔离与网络共享
- 数据持久化方案
- 环境变量集中管理
- 完善的依赖管理
通过此配置,开发者可以快速搭建完整的Activepieces运行环境,为自动化工作流开发提供坚实基础。