如何在群晖DS918+部署KoalixCRM Docker并运行Docker Compose
如何在群晖DS918+上用Docker Compose部署KoalixCRM(含PostgreSQL)
我刚好折腾过类似的场景,群晖DSM的图形界面确实只能单镜像部署,但用Docker Compose就能轻松搞定带数据库的完整应用栈,下面一步步来:
1. 准备工作:开启群晖SSH并确认Docker套件已安装
- 先打开群晖DSM的控制面板 → 终端机和SNMP,勾选「启用SSH功能」,端口保持默认22即可(如果改了端口要记下来)。
- 确保你已经在套件中心安装了Docker套件,并且已经启动。
2. 创建部署目录并编写Docker Compose文件
- 打开群晖的File Station,在合适的共享文件夹(比如
docker共享文件夹)下新建一个子目录,命名为koalixcrm,用来存放Compose配置和数据卷。 - 在这个目录里创建一个名为
docker-compose.yml的文件,粘贴以下配置(根据你的需求调整细节):
version: '3.8' services: db: image: postgres:13-alpine environment: POSTGRES_DB: koalixcrm POSTGRES_USER: koalixuser POSTGRES_PASSWORD: your_secure_password volumes: - ./postgres_data:/var/lib/postgresql/data restart: always koalixcrm: image: scaphilo/koalixcrm:latest environment: DB_NAME: koalixcrm DB_USER: koalixuser DB_PASSWORD: your_secure_password DB_HOST: db DB_PORT: 5432 DEBUG: "False" ports: - "8000:8000" volumes: - ./koalix_data:/app/media depends_on: - db restart: always
注意:把
your_secure_password替换成你自己的安全密码,端口8000如果和其他服务冲突可以改成别的(比如8001)。
3. 通过SSH连接到群晖并启动服务
- 用终端工具(比如PuTTY、Windows终端、Mac/iOS的Terminal)连接到群晖:
输入你的DSM管理员密码登录。ssh admin@你的群晖IP地址 - 切换到刚才创建的
koalixcrm目录,比如:cd /volume1/docker/koalixcrm - 启动服务:
docker-compose up -d如果你的群晖Docker是新版,可能需要用
docker compose up -d(没有横杠),两种都试试就行。
4. 初始化KoalixCRM数据库
- 服务启动后,需要执行Django的数据库迁移和创建超级用户:
# 查看容器名称(如果不确定的话) docker ps # 进入KoalixCRM容器,替换成实际的容器名称 docker exec -it koalixcrm_koalixcrm_1 bash # 执行数据库迁移 python manage.py migrate # 创建超级用户(按提示输入用户名、邮箱、密码) python manage.py createsuperuser # 退出容器 exit
5. 验证部署
- 打开浏览器,输入
http://你的群晖IP:8000(如果改了端口就用对应的端口),应该能看到KoalixCRM的登录界面。 - 用刚才创建的超级用户账号登录,就可以开始使用了。
一些实用的后续命令
- 查看服务实时日志:
docker-compose logs -f - 重启所有服务:
docker-compose restart - 停止并删除服务(保留数据卷):
docker-compose down - 停止并删除服务+数据卷(谨慎操作,会丢失所有数据):
docker-compose down -v
内容的提问来源于stack exchange,提问作者scaphilo




