2026年 Coze 私有化部署实战:用 Docker 快速搭建完整环境
Coze Docker部署教程|2026最新版
本文面向希望在本地服务器、云服务器或内网环境中部署 Coze 的用户,介绍使用 Docker / Docker Compose 部署 Coze 的完整流程。由于 Coze 相关项目和镜像可能会持续更新,实际部署时请以官方仓库、官方文档和镜像说明为准。本文提供的是一套通用、稳定、便于排错的 Docker 化部署思路,适合作为 2026 年部署 Coze 的参考教程。
一、Coze 是什么?
Coze 是一个面向 AI Bot / 智能体开发的平台,通常用于构建聊天机器人、工作流自动化应用、知识库问答系统以及多工具调用型 AI 应用。通过 Coze,开发者可以更高效地完成以下工作:
- 创建 AI 智能体;
- 配置大语言模型能力;
- 接入知识库;
- 设计工作流;
- 调用插件、API 或外部工具;
- 发布到不同渠道或在私有环境中运行。
对于企业或开发团队来说,使用 Docker 部署 Coze 的优势非常明显:
- 环境隔离:避免系统依赖混乱;
- 部署简单:一套 Compose 文件即可启动多个服务;
- 迁移方便:配置和数据目录可直接迁移;
- 便于维护:升级、回滚、重启都更可控;
- 适合私有化场景:可以在内网服务器或云主机中运行。
二、部署前准备
在开始之前,请先准备一台 Linux 服务器。推荐使用 Ubuntu 22.04 / 24.04、Debian 12、CentOS Stream、Rocky Linux 或 AlmaLinux 等主流发行版。
1. 推荐服务器配置
如果只是测试部署,可以使用较低配置;如果用于生产环境,建议预留更充足的资源。
| 场景 | CPU | 内存 | 磁盘 | 说明 |
|---|---|---|---|---|
| 本地测试 | 2 核 | 4GB | 30GB | 仅用于体验 |
| 小团队使用 | 4 核 | 8GB | 80GB | 可承载少量用户 |
| 生产环境 | 8 核以上 | 16GB以上 | 200GB以上 | 建议搭配独立数据库和对象存储 |
如果 Coze 部署中包含知识库、向量数据库、文件存储、模型网关等组件,内存和磁盘占用会明显增加。
2. 系统要求
请确保服务器可以访问外网,至少需要能够拉取 Docker 镜像。如果服务器处在国内网络环境,建议配置 Docker 镜像加速器,避免拉取镜像失败。
建议提前开放以下端口:
| 端口 | 用途 |
|---|---|
| 80 | HTTP 访问 |
| 443 | HTTPS 访问 |
| 8080 / 8888 | Web 服务测试端口,视实际配置而定 |
| 5432 | PostgreSQL,生产环境不建议公网开放 |
| 6379 | Redis,生产环境不建议公网开放 |
如果你使用云服务器,还需要在云厂商控制台安全组中放行对应端口。
三、安装 Docker 和 Docker Compose
1. 更新系统软件包
以 Ubuntu / Debian 为例:
sudo apt update
sudo apt upgrade -y
2. 安装 Docker
可以使用官方安装脚本:
curl -fsSL https://get.docker.com | bash
安装完成后查看版本:
docker version
启动 Docker 并设置开机自启:
sudo systemctl enable docker
sudo systemctl start docker
3. 安装 Docker Compose
新版 Docker 通常已经内置 Compose 插件,可以执行:
docker compose version
如果能看到版本号,说明已经可用。
如果提示命令不存在,可以单独安装:
sudo apt install docker-compose-plugin -y
4. 将当前用户加入 Docker 用户组
为了避免每次执行 Docker 命令都输入 sudo,可以执行:
sudo usermod -aG docker $USER
然后重新登录服务器,或执行:
newgrp docker
测试 Docker 是否可用:
docker ps
四、获取 Coze 部署文件
不同版本的 Coze 可能有不同的镜像名称和部署结构。如果 Coze 官方提供开源仓库,一般可以通过 Git 获取:
git clone https://github.com/coze-dev/coze-studio.git
cd coze-studio
说明:仓库地址仅作为常见示例,实际请以官方发布地址为准。如果官方仓库名称或路径发生变化,请使用最新官方链接。
查看目录结构:
ls -lah
一般来说,Docker 部署相关文件可能位于:
docker-compose.yml
compose.yaml
deploy/
docker/
如果项目中已经提供 docker-compose.yml,可以优先使用官方文件。
五、配置环境变量
很多 Docker 项目都会提供 .env.example 或 .env.template 文件。我们可以复制一份作为实际配置:
cp .env.example .env
然后编辑:
nano .env
常见配置项包括:
# 服务访问地址
APP_URL=http://your-domain.com
# 数据库配置
POSTGRES_HOST=postgres
POSTGRES_PORT=5432
POSTGRES_USER=coze
POSTGRES_PASSWORD=please_change_this_password
POSTGRES_DB=coze
# Redis 配置
REDIS_HOST=redis
REDIS_PORT=6379
REDIS_PASSWORD=please_change_this_redis_password
# JWT 或 Session 密钥
JWT_SECRET=please_change_this_to_a_long_random_string
SESSION_SECRET=please_change_this_to_a_long_random_string
# 文件存储
STORAGE_TYPE=local
STORAGE_PATH=/data/storage
# 模型服务配置
OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=https://api.openai.com/v1
配置注意事项
-
不要使用默认密码
数据库、Redis、JWT_SECRET、SESSION_SECRET 都必须修改成高强度字符串。 -
生产环境建议使用域名
如果要通过公网访问,建议配置:APP_URL=https://coze.example.com -
模型 API 地址要确认可访问
如果使用 OpenAI、Azure OpenAI、火山方舟、通义千问、智谱、DeepSeek 或其他模型服务,需要确认 Coze 支持对应接入方式。 -
本地存储与对象存储
测试环境可用本地存储,生产环境建议使用 S3、MinIO 或云厂商对象存储,避免文件丢失和迁移困难。
六、编写 Docker Compose 文件
如果官方已经提供 Compose 文件,可以直接使用。如果你需要自定义,可以参考以下结构。以下示例仅用于说明部署思路,具体镜像名称、环境变量和服务名称需要根据官方文档调整。
services:
coze:
image: coze/coze-studio:latest
container_name: coze
restart: always
ports:
- "8080:8080"
env_file:
- .env
depends_on:
- postgres
- redis
volumes:
- ./data/storage:/data/storage
- ./logs:/app/logs
networks:
- coze-net
postgres:
image: postgres:16
container_name: coze-postgres
restart: always
environment:
POSTGRES_USER: coze
POSTGRES_PASSWORD: please_change_this_password
POSTGRES_DB: coze
volumes:
- ./data/postgres:/var/lib/postgresql/data
networks:
- coze-net
redis:
image: redis:7
container_name: coze-redis
restart: always
command: redis-server --requirepass please_change_this_redis_password
volumes:
- ./data/redis:/data
networks:
- coze-net
networks:
coze-net:
driver: bridge
关键说明
coze:主应用服务;postgres:数据库服务,用于存储业务数据;redis:缓存服务,用于会话、任务队列或缓存;volumes:用于持久化数据,避免容器删除后数据丢失;restart: always:服务器重启后自动拉起容器;networks:让容器之间通过服务名访问。
七、启动 Coze 服务
在 docker-compose.yml 所在目录执行:
docker compose up -d
查看容器状态:
docker compose ps
如果所有服务都是 Up 状态,说明启动成功。
查看日志:
docker compose logs -f
只查看 Coze 主服务日志:
docker compose logs -f coze
如果看到类似服务启动完成、HTTP 服务监听成功、数据库连接成功等日志,即可进入下一步。
八、访问 Coze
如果你的服务器 IP 是 1.2.3.4,Compose 中映射的是 8080:8080,那么可以在浏览器访问:
http://1.2.3.4:8080
如果使用域名,例如:
http://coze.example.com:8080
生产环境不建议直接暴露 8080 端口,推荐通过 Nginx 或 Caddy 做反向代理,并配置 HTTPS。
九、配置 Nginx 反向代理
1. 安装 Nginx
sudo apt install nginx -y
2. 新建站点配置
sudo nano /etc/nginx/sites-available/coze.conf
写入以下内容:
server {
listen 80;
server_name coze.example.com;
client_max_body_size 100m;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_http_version 1.1;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
启用站点:
sudo ln -s /etc/nginx/sites-available/coze.conf /etc/nginx/sites-enabled/coze.conf
检查配置:
sudo nginx -t
重载 Nginx:
sudo systemctl reload nginx
此时可以访问:
http://coze.example.com
十、配置 HTTPS 证书
推荐使用 Certbot 免费申请 Let’s Encrypt 证书。
1. 安装 Certbot
sudo apt install certbot python3-certbot-nginx -y
2. 申请证书
sudo certbot --nginx -d coze.example.com
根据提示选择是否自动跳转 HTTPS。完成后访问:
https://coze.example.com
3. 测试自动续期
sudo certbot renew --dry-run
如果测试通过,说明证书自动续期正常。
十一、初始化管理员账号
Coze 部署完成后,通常需要进行初始化设置。不同版本初始化方式可能不同,常见方式包括:
- 首次访问页面创建管理员账号;
- 通过命令行创建管理员;
- 通过环境变量预设管理员账号;
- 通过后台初始化脚本生成。
如果官方提供初始化命令,可能类似:
docker compose exec coze ./scripts/init-admin.sh
或:
docker compose exec coze npm run init:admin
实际命令请以官方文档为准。
初始化完成后,请立即完成以下操作:
- 修改默认管理员密码;
- 关闭公开注册,或限制注册域名;
- 配置模型服务;
- 配置知识库存储;
- 配置插件或工具调用权限;
- 检查系统日志和访问日志。
十二、配置大模型服务
Coze 的核心能力依赖模型服务。你可以根据实际需求接入不同的大语言模型供应商。
常见配置项包括:
MODEL_PROVIDER=openai
OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=https://api.openai.com/v1
DEFAULT_MODEL=gpt-4o-mini
如果使用兼容 OpenAI API 的模型服务,通常只需要修改 BASE_URL 和 API_KEY。
例如:
OPENAI_BASE_URL=https://your-model-provider.example.com/v1
OPENAI_API_KEY=your_provider_key
配置完成后重启服务:
docker compose restart coze
在后台测试模型调用是否正常。如果出现模型请求失败,重点检查:
- API Key 是否正确;
- Base URL 是否可访问;
- 模型名称是否填写正确;
- 服务器是否能访问模型服务;
- 是否存在代理、防火墙或 DNS 问题;
- 模型服务是否支持流式输出。
十三、数据持久化与备份
Docker 部署中最重要的事情之一就是数据持久化。请务必确认数据库、Redis、文件存储目录已经挂载到宿主机。
常见数据目录:
./data/postgres
./data/redis
./data/storage
./logs
1. 备份 PostgreSQL
执行:
docker compose exec postgres pg_dump -U coze coze > backup_coze.sql
恢复:
cat backup_coze.sql | docker compose exec -T postgres psql -U coze coze
2. 备份文件存储
tar -zcvf coze_storage_backup.tar.gz ./data/storage
3. 推荐备份策略
生产环境建议:
- 每天自动备份数据库;
- 每周完整备份文件存储;
- 备份文件上传到对象存储;
- 至少保留 7 天可恢复版本;
- 定期进行恢复演练。
可以写一个简单的备份脚本:
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR=/backup/coze
mkdir -p $BACKUP_DIR
docker compose exec postgres pg_dump -U coze coze > $BACKUP_DIR/coze_$DATE.sql
tar -zcf $BACKUP_DIR/storage_$DATE.tar.gz ./data/storage
find $BACKUP_DIR -type f -mtime +14 -delete
保存为:
backup.sh
添加执行权限:
chmod +x backup.sh
添加定时任务:
crontab -e
写入:
0 3 * * * /path/to/coze/backup.sh
表示每天凌晨 3 点执行备份。
十四、升级 Coze
升级前一定要先备份数据。
1. 停止服务
docker compose down
2. 拉取最新代码或镜像
如果使用 Git 仓库:
git pull
如果使用镜像:
docker compose pull
3. 启动服务
docker compose up -d
4. 查看日志
docker compose logs -f
如果新版本涉及数据库迁移,官方通常会提供迁移脚本或在启动时自动执行。升级后要重点检查:
- 页面是否可以正常打开;
- 管理员是否可以登录;
- Bot 是否可以正常运行;
- 知识库是否正常;
- 工作流是否正常;
- 模型调用是否正常;
- 日志中是否出现错误。
如果升级失败,可以回滚到旧版本镜像,并恢复备份数据。
十五、常见问题排查
1. Docker 镜像拉取失败
可能原因:
- 网络无法访问 Docker Hub;
- 镜像名称错误;
- 镜像仓库需要登录;
- DNS 解析异常。
解决方式:
docker login
docker compose pull
也可以配置镜像加速器或手动指定镜像源。
2. 容器启动后马上退出
查看日志:
docker compose logs coze
常见原因包括:
- 环境变量缺失;
- 数据库连接失败;
- Redis 密码错误;
- 端口被占用;
- 文件目录权限不足;
- 镜像版本不兼容。
3. 页面打不开
检查容器是否运行:
docker compose ps
检查端口是否监听:
ss -tulnp | grep 8080
检查防火墙:
sudo ufw status
如果是云服务器,还要检查安全组是否放行端口。
4. 数据库连接失败
确认数据库容器是否正常:
docker compose logs postgres
确认 .env 中数据库用户名、密码、库名是否和 Compose 中一致。
5. Redis 连接失败
确认 Redis 密码是否一致。如果 Redis 启动命令中设置了:
command: redis-server --requirepass your_password
那么 Coze 环境变量中也必须填写相同密码。
6. 文件上传失败
重点检查:
client_max_body_size是否过小;- 文件存储目录是否有权限;
- 对象存储配置是否正确;
- 上传文件大小是否超过系统限制。
如果使用 Nginx,可以调整:
client_max_body_size 100m;
7. 模型调用失败
重点检查:
- API Key 是否有效;
- 模型名称是否正确;
- 余额或额度是否充足;
- 网络是否能访问模型服务;
- Base URL 是否填写完整;
- 是否需要代理。
可以在服务器上测试:
curl https://api.openai.com/v1/models \
-H "Authorization: Bearer your_api_key"
十六、生产环境安全建议
如果你准备将 Coze 用于生产环境,建议至少完成以下安全加固:
-
启用 HTTPS
不要使用明文 HTTP 传输登录信息和业务数据。 -
关闭数据库公网访问
PostgreSQL、Redis 不应暴露到公网,只允许容器网络或内网访问。 -
设置强密码
数据库密码、Redis 密码、管理员密码、JWT 密钥都必须足够复杂。 -
限制后台访问
可以使用 IP 白名单、VPN、堡垒机或零信任网关保护后台入口。 -
定期备份
没有备份的系统不适合生产使用。 -
定期升级
保持 Docker、系统组件、Coze 应用和依赖服务及时更新。 -
日志监控
关注异常登录、接口错误、模型调用失败、磁盘空间不足等问题。 -
资源监控
建议安装 Prometheus、Grafana、Node Exporter 或使用云厂商监控服务。 -
最小权限原则
不要让业务容器拥有不必要的宿主机权限。 -
保护 API Key
模型服务密钥不要写入前端代码,不要提交到 Git 仓库。
十七、推荐目录结构
为了方便维护,建议使用以下目录结构:
/opt/coze/
├── docker-compose.yml
├── .env
├── data/
│ ├── postgres/
│ ├── redis/
│ └── storage/
├── logs/
├── backup/
└── scripts/
└── backup.sh
创建目录:
sudo mkdir -p /opt/coze
sudo chown -R $USER:$USER /opt/coze
cd /opt/coze
这种结构清晰、易备份、易迁移,也方便后续做自动化部署。
十八、一键启动命令汇总
如果你已经准备好 docker-compose.yml 和 .env,常用命令如下:
# 启动
docker compose up -d
# 查看状态
docker compose ps
# 查看日志
docker compose logs -f
# 重启
docker compose restart
# 停止
docker compose down
# 拉取镜像
docker compose pull
# 更新后启动
docker compose up -d
# 查看资源占用
docker stats
十九、总结
使用 Docker 部署 Coze 的核心流程并不复杂,整体可以概括为:
- 准备服务器;
- 安装 Docker 和 Docker Compose;
- 获取 Coze 部署文件;
- 修改
.env环境变量; - 启动 Docker Compose;
- 配置 Nginx 反向代理;
- 申请 HTTPS 证书;
- 初始化管理员账号;
- 配置模型服务;
- 做好数据备份和安全加固。
对于个人开发者来说,Docker 部署可以快速搭建 Coze 测试环境,用于学习智能体、工作流和知识库能力。对于企业团队来说,Docker 部署则可以作为私有化落地的基础方案,再结合独立数据库、对象存储、日志监控、自动备份和容器编排平台,进一步提升稳定性和可维护性。
最后提醒:Coze 的镜像、环境变量、初始化命令和组件依赖可能会随着版本变化而调整。正式部署前,建议先阅读官方最新文档,并在测试环境完成验证后再上线生产环境。