You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在群晖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)连接到群晖:
    ssh admin@你的群晖IP地址
    
    输入你的DSM管理员密码登录。
  • 切换到刚才创建的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

火山引擎 最新活动