上一篇 下一篇 分享链接 返回 返回顶部

Coze 私有化部署实战:从服务器到上线的一键搭建指南

发布人:慈云数据-客服中心 发布时间:15小时前 阅读量:5

Coze 部署完整教程|一键部署

本文面向想要在服务器上自建 Coze / Coze Studio 的开发者、运维人员和 AI 应用搭建者,详细介绍从服务器准备、环境安装、项目拉取、环境变量配置、Docker 一键部署、域名反向代理、模型接入到常见问题排查的完整流程。
适合新手按步骤操作,也适合有经验的用户快速搭建私有化 AI Bot 开发平台。


一、Coze 是什么?

Coze 是一个面向 AI Bot、智能体和工作流应用的开发平台。通过 Coze,用户可以快速创建具备大语言模型能力的 AI 助手,并为其配置知识库、插件、工作流、数据库、变量、对话记忆等能力。

简单来说,Coze 可以帮助你完成以下事情:

  • 搭建 AI 聊天机器人;
  • 创建企业内部知识库问答系统;
  • 编排多步骤 AI 工作流;
  • 接入不同的大模型服务;
  • 构建智能客服、运营助手、数据分析助手;
  • 将 Bot 发布到网站、应用或其他平台中。

相比直接调用大模型 API,Coze 的优势在于它提供了更完整的应用层能力,例如可视化编排、Prompt 管理、插件管理、知识库管理和调试能力。

如果你希望在自己的服务器上部署一套类似 Coze 的 AI 应用开发平台,私有化部署是一个非常合适的选择。


二、部署前准备

在正式部署之前,需要准备一台服务器、一个可选的域名,以及必要的软件环境。

1. 服务器配置建议

测试环境可以使用较低配置,但如果用于团队或生产环境,建议配置稍高一些。

场景 CPU 内存 磁盘 系统
个人测试 2 核 4 GB 40 GB Ubuntu 22.04
小团队使用 4 核 8 GB 80 GB Ubuntu 22.04
生产环境 8 核以上 16 GB 以上 200 GB 以上 Ubuntu 22.04 / Debian 12

如果需要本地部署大模型,还需要额外准备 GPU 服务器。
如果只是接入 OpenAI、DeepSeek、Moonshot、通义千问、智谱等云端模型 API,则普通 CPU 服务器即可。


2. 推荐系统环境

本文以 Ubuntu 22.04 LTS 为例。

你可以使用以下云服务器:

  • 阿里云 ECS;
  • 腾讯云 CVM;
  • 华为云云服务器;
  • AWS EC2;
  • Azure VM;
  • Google Cloud VM;
  • 轻量应用服务器;
  • 自建 Linux 服务器。

建议使用全新的服务器,避免旧环境中已安装的软件造成端口冲突或依赖冲突。


3. 需要开放的端口

根据你的部署方式,通常需要开放以下端口:

端口 用途
22 SSH 登录
80 HTTP 访问
443 HTTPS 访问
8888 / 3000 / 8080 Web 服务端口,具体以项目配置为准

如果你使用云服务器,需要到云厂商的安全组中放行端口。

例如:

  • 放行 80
  • 放行 443
  • 如不使用反向代理,可临时放行 Coze Web 服务端口。

三、部署方式说明

Coze 私有化部署通常有几种方式:

  1. 源码部署
    适合开发者二次开发,但依赖较多,部署复杂。

  2. Docker Compose 部署
    最常见,适合大多数用户,维护简单。

  3. 一键脚本部署
    将安装 Docker、拉取项目、生成配置、启动服务等步骤封装到一个脚本里,适合新手快速部署。

本文重点介绍第三种方式:一键部署
同时也会说明关键配置,方便你后续维护和排查问题。


四、服务器初始化

首先通过 SSH 登录服务器。

ssh root@你的服务器IP

如果你不是 root 用户,可以使用:

sudo -i

更新系统软件包:

apt update && apt upgrade -y

安装基础工具:

apt install -y curl wget git vim unzip ca-certificates gnupg lsb-release

设置服务器时区为中国上海:

timedatectl set-timezone Asia/Shanghai

查看时间是否正确:

date

五、安装 Docker 和 Docker Compose

如果你的服务器已经安装 Docker,可以跳过本步骤。

1. 一键安装 Docker

执行:

curl -fsSL https://get.docker.com | bash

启动 Docker:

systemctl enable docker
systemctl start docker

查看 Docker 版本:

docker -v

如果输出类似以下内容,说明安装成功:

Docker version 26.x.x, build xxxxx

2. 安装 Docker Compose 插件

较新的 Docker 版本通常自带 Compose 插件,你可以使用:

docker compose version

如果能看到版本号,说明已经安装成功。

如果没有安装,可以执行:

apt install -y docker-compose-plugin

再次确认:

docker compose version

六、创建部署目录

建议将 Coze 相关文件统一放在 /opt/coze 目录中。

mkdir -p /opt/coze
cd /opt/coze

后续所有部署操作都在该目录下执行。


七、一键部署脚本

下面提供一个通用的一键部署脚本示例。
该脚本会完成以下操作:

  • 检查 Docker;
  • 创建部署目录;
  • 拉取 Coze / Coze Studio 项目;
  • 生成基础环境变量;
  • 启动 Docker Compose 服务;
  • 输出访问地址。

注意:不同版本的 Coze 开源项目目录结构可能存在差异,请以你实际使用的官方仓库说明为准。
如果官方仓库提供了专门的 docker-compose.yml 或部署脚本,应优先使用官方文件。

创建脚本:

vim install-coze.sh

写入以下内容:

#!/usr/bin/env bash

set -e

INSTALL_DIR="/opt/coze"
REPO_URL="https://github.com/coze-dev/coze-studio.git"
APP_PORT="8888"

echo "======================================"
echo " Coze 一键部署脚本"
echo "======================================"

if [ "$(id -u)" != "0" ]; then
  echo "请使用 root 用户运行该脚本"
  exit 1
fi

echo "[1/7] 更新系统依赖..."
apt update -y
apt install -y curl wget git vim unzip ca-certificates gnupg lsb-release

echo "[2/7] 检查 Docker..."
if ! command -v docker >/dev/null 2>&1; then
  echo "未检测到 Docker,开始安装..."
  curl -fsSL https://get.docker.com | bash
  systemctl enable docker
  systemctl start docker
else
  echo "Docker 已安装"
fi

echo "[3/7] 检查 Docker Compose..."
if ! docker compose version >/dev/null 2>&1; then
  echo "安装 Docker Compose 插件..."
  apt install -y docker-compose-plugin
else
  echo "Docker Compose 已安装"
fi

echo "[4/7] 创建部署目录..."
mkdir -p ${INSTALL_DIR}
cd ${INSTALL_DIR}

echo "[5/7] 拉取 Coze 项目..."
if [ ! -d "coze-studio" ]; then
  git clone ${REPO_URL}
else
  echo "项目目录已存在,执行更新..."
  cd coze-studio
  git pull
  cd ..
fi

cd coze-studio

echo "[6/7] 准备环境配置..."
if [ -f ".env.example" ] && [ ! -f ".env" ]; then
  cp .env.example .env
  echo "已根据 .env.example 生成 .env 文件"
fi

echo "[7/7] 启动服务..."
if [ -f "docker-compose.yml" ]; then
  docker compose up -d
elif [ -f "compose.yaml" ]; then
  docker compose -f compose.yaml up -d
else
  echo "未找到 docker-compose.yml 或 compose.yaml,请检查项目结构"
  exit 1
fi

SERVER_IP=$(curl -s ifconfig.me || hostname -I | awk '{print $1}')

echo "======================================"
echo " Coze 部署完成"
echo " 访问地址:"
echo " http://${SERVER_IP}:${APP_PORT}"
echo "======================================"
echo "如无法访问,请检查安全组、防火墙、端口映射和容器状态。"

保存并退出后,赋予执行权限:

chmod +x install-coze.sh

运行一键部署脚本:

bash install-coze.sh

八、查看服务状态

部署完成后,进入项目目录:

cd /opt/coze/coze-studio

查看容器运行状态:

docker compose ps

如果容器状态均为 runninghealthy,说明服务已正常启动。

查看实时日志:

docker compose logs -f

查看最近 200 行日志:

docker compose logs --tail=200

如果某个服务异常退出,可以单独查看:

docker compose logs 服务名

九、访问 Coze Web 页面

如果服务端口是 8888,可以通过浏览器访问:

http://服务器IP:8888

如果你配置了域名和反向代理,则可以访问:

https://coze.example.com

如果无法访问,请重点检查以下内容:

  1. 容器是否正常运行;
  2. 服务器防火墙是否放行端口;
  3. 云服务器安全组是否开放端口;
  4. Docker Compose 端口映射是否正确;
  5. 应用实际监听端口是否与访问端口一致。

十、配置环境变量

大多数 Coze 部署项目都会使用 .env 文件管理配置。
该文件通常位于项目根目录下。

cd /opt/coze/coze-studio
vim .env

常见配置包括:

# 应用访问地址
APP_URL=http://你的服务器IP:8888

# 数据库配置
DB_HOST=mysql
DB_PORT=3306
DB_USER=coze
DB_PASSWORD=请修改为强密码
DB_NAME=coze

# Redis 配置
REDIS_HOST=redis
REDIS_PORT=6379

# JWT 或 Session 密钥
JWT_SECRET=请修改为随机长字符串
SESSION_SECRET=请修改为随机长字符串

# 文件存储配置
STORAGE_TYPE=local

如果你使用域名,则建议将 APP_URL 改为:

APP_URL=https://coze.example.com

修改完成后重启服务:

docker compose down
docker compose up -d

或者:

docker compose restart

十一、配置大模型 API

Coze 平台本身通常不直接提供模型能力,你需要接入第三方大模型服务。
常见可接入的模型包括:

  • OpenAI GPT 系列;
  • Azure OpenAI;
  • DeepSeek;
  • 通义千问;
  • 智谱 GLM;
  • Moonshot Kimi;
  • 百川智能;
  • 火山引擎豆包;
  • 本地 Ollama 模型;
  • 私有化 vLLM / Xinference 服务。

1. OpenAI 示例

OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxx
OPENAI_BASE_URL=https://api.openai.com/v1

2. DeepSeek 示例

DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxx
DEEPSEEK_BASE_URL=https://api.deepseek.com

3. 通义千问示例

DASHSCOPE_API_KEY=sk-xxxxxxxxxxxxxxxx

4. Ollama 本地模型示例

如果 Ollama 和 Coze 在同一台服务器上,可以使用:

OLLAMA_BASE_URL=http://host.docker.internal:11434

在 Linux Docker 环境中,有时需要在 docker-compose.yml 中增加:

extra_hosts:
  - "host.docker.internal:host-gateway"

然后重启容器:

docker compose up -d

十二、使用 Nginx 配置域名访问

如果你不想通过 IP:端口 访问,而是希望使用域名访问,例如:

https://coze.example.com

可以使用 Nginx 进行反向代理。

1. 安装 Nginx

apt install -y nginx
systemctl enable nginx
systemctl start nginx

2. 添加站点配置

创建配置文件:

vim /etc/nginx/conf.d/coze.conf

写入:

server {
    listen 80;
    server_name coze.example.com;

    client_max_body_size 100m;

    location / {
        proxy_pass http://127.0.0.1:8888;
        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";

        proxy_read_timeout 300s;
        proxy_send_timeout 300s;
    }
}

检查配置:

nginx -t

重载 Nginx:

systemctl reload nginx

此时可以访问:

http://coze.example.com

十三、配置 HTTPS 证书

推荐使用 Let’s Encrypt 免费证书。

1. 安装 Certbot

apt install -y certbot python3-certbot-nginx

2. 申请证书

certbot --nginx -d coze.example.com

根据提示输入邮箱并确认协议。

申请成功后,Certbot 会自动修改 Nginx 配置,并启用 HTTPS。

访问:

https://coze.example.com

3. 测试自动续期

certbot renew --dry-run

如果没有报错,说明证书自动续期配置正常。


十四、数据持久化与备份

部署完成后,不要只关注服务是否能访问,还要重视数据持久化和备份。

Coze 可能涉及以下重要数据:

  • 数据库数据;
  • Redis 数据;
  • 上传文件;
  • 知识库文档;
  • 向量数据库数据;
  • 配置文件;
  • 用户数据;
  • Bot 配置;
  • 工作流配置。

1. 查看 Docker 卷

docker volume ls

2. 查看 Compose 配置中的挂载目录

cat docker-compose.yml

重点关注:

volumes:
  - ./data/mysql:/var/lib/mysql
  - ./data/redis:/data
  - ./data/uploads:/app/uploads

如果项目已经将数据挂载到本地目录,例如 /opt/coze/coze-studio/data,则备份该目录即可。

3. 简单备份命令

cd /opt/coze
tar -czvf coze-backup-$(date +%F).tar.gz coze-studio

4. 定时备份建议

可以使用 crontab 每天凌晨备份:

crontab -e

添加:

0 3 * * * cd /opt/coze && tar -czf /opt/coze-backup-$(date +\%F).tar.gz coze-studio

生产环境建议将备份文件同步到对象存储或其他服务器,例如:

  • 阿里云 OSS;
  • 腾讯云 COS;
  • AWS S3;
  • MinIO;
  • NAS;
  • 远程备份服务器。

十五、更新 Coze

如果你使用 Git 拉取官方项目,可以按照以下步骤更新:

cd /opt/coze/coze-studio
git pull
docker compose pull
docker compose down
docker compose up -d

如果更新前担心数据丢失,建议先备份:

cd /opt/coze
tar -czvf coze-before-update-$(date +%F).tar.gz coze-studio

更新后查看日志:

cd /opt/coze/coze-studio
docker compose logs -f

如果出现异常,可以根据备份回滚。


十六、常见问题排查

1. 浏览器无法访问页面

首先检查容器状态:

docker compose ps

检查端口监听:

ss -tunlp | grep 8888

检查防火墙:

ufw status

如果使用云服务器,还需要检查云平台安全组是否开放端口。


2. 容器启动失败

查看日志:

docker compose logs --tail=200

常见原因包括:

  • .env 配置错误;
  • 数据库密码不一致;
  • 端口被占用;
  • 镜像拉取失败;
  • 服务器内存不足;
  • Docker 版本过低;
  • 文件权限错误。

3. 端口被占用

查看端口占用:

ss -tunlp | grep 8888

如果端口被其他程序占用,可以修改 docker-compose.yml 中的端口映射。

例如:

ports:
  - "8899:8888"

修改后重启:

docker compose up -d

之后访问:

http://服务器IP:8899

4. 镜像下载很慢

如果服务器在国内,Docker 镜像下载可能较慢。
可以配置镜像加速器。

创建或编辑:

vim /etc/docker/daemon.json

写入示例:

{
  "registry-mirrors": [
    "https://docker.m.daocloud.io"
  ]
}

重启 Docker:

systemctl daemon-reload
systemctl restart docker

然后重新启动服务:

cd /opt/coze/coze-studio
docker compose up -d

5. 登录或注册异常

可能原因包括:

  • 后端服务未启动;
  • 数据库连接失败;
  • 前端配置的 API 地址错误;
  • APP_URL 配置错误;
  • 反向代理没有正确传递请求头;
  • HTTPS 与 HTTP 混用导致 Cookie 异常。

建议检查:

docker compose logs -f

同时确认 .env 中的访问地址是否与实际访问地址一致。


6. 上传文件失败

可能原因包括:

  • Nginx 限制上传大小;
  • 后端限制上传大小;
  • 存储目录权限不足;
  • 磁盘空间不足。

查看磁盘空间:

df -h

调整 Nginx 上传限制:

client_max_body_size 100m;

修改后重载:

nginx -t
systemctl reload nginx

十七、安全加固建议

部署完成后,建议进行基础安全加固。

1. 修改默认密码

如果系统或项目存在默认管理员账号,请第一时间修改密码。

2. 使用强密钥

.env 中类似以下配置必须使用随机长字符串:

JWT_SECRET=
SESSION_SECRET=
ENCRYPTION_KEY=

可以使用以下命令生成:

openssl rand -hex 32

3. 禁止数据库端口暴露到公网

MySQL、PostgreSQL、Redis 等服务不应直接暴露到公网。
在 Docker Compose 中尽量不要将数据库端口映射到宿主机公网。

不推荐:

ports:
  - "3306:3306"

推荐仅在 Docker 内部网络访问。

4. 开启 HTTPS

生产环境必须使用 HTTPS,避免登录信息、API Key、Cookie 明文传输。

5. 定期更新

定期更新系统、Docker 镜像和 Coze 项目:

apt update && apt upgrade -y
docker compose pull

6. 限制后台访问

如果 Coze 仅供内部团队使用,可以通过 Nginx 添加 IP 白名单,或者接入企业 VPN、零信任网关。


十八、生产环境部署建议

如果你准备用于真实业务场景,建议不要只使用默认部署方式,而是进一步优化架构。

1. 数据库独立部署

将 MySQL 或 PostgreSQL 独立部署到云数据库,可以获得更好的稳定性和备份能力。

2. Redis 独立部署

对于高并发场景,Redis 建议使用云 Redis 或独立 Redis 实例。

3. 文件使用对象存储

上传文件、知识库文档、图片等建议存储到对象存储服务中,例如:

  • 阿里云 OSS;
  • 腾讯云 COS;
  • AWS S3;
  • MinIO。

4. 日志集中收集

可以接入:

  • Loki;
  • ELK;
  • Grafana;
  • Prometheus;
  • 云日志服务。

5. 配置监控告警

至少需要监控:

  • CPU 使用率;
  • 内存使用率;
  • 磁盘空间;
  • 容器状态;
  • 接口错误率;
  • 模型 API 调用失败率。

十九、完整部署命令汇总

如果你希望快速执行,可以参考以下命令:

apt update && apt upgrade -y
apt install -y curl wget git vim unzip ca-certificates gnupg lsb-release

curl -fsSL https://get.docker.com | bash
systemctl enable docker
systemctl start docker

apt install -y docker-compose-plugin

mkdir -p /opt/coze
cd /opt/coze

git clone https://github.com/coze-dev/coze-studio.git
cd coze-studio

if [ -f ".env.example" ]; then
  cp .env.example .env
fi

docker compose up -d

docker compose ps

访问:

http://服务器IP:8888

如果项目实际端口不是 8888,请以 docker-compose.yml 中的端口映射为准。

查看端口映射:

docker compose ps

或:

cat docker-compose.yml

二十、结语

通过本文的步骤,你已经可以在 Linux 服务器上完成 Coze 的一键部署,并了解了后续的域名绑定、HTTPS 配置、模型 API 接入、数据备份、更新维护和常见问题排查。

对于个人开发者来说,Docker Compose 部署已经足够快速、方便;对于企业团队来说,则建议进一步拆分数据库、Redis、对象存储和日志系统,提升可用性和安全性。

最后总结一下部署流程:

  1. 准备 Ubuntu 服务器;
  2. 安装 Docker 和 Docker Compose;
  3. 拉取 Coze 项目;
  4. 配置 .env 环境变量;
  5. 使用 docker compose up -d 启动服务;
  6. 通过 IP 或域名访问;
  7. 接入大模型 API;
  8. 配置 HTTPS;
  9. 做好备份和安全加固。

只要按照本文步骤操作,即可较为顺利地完成 Coze 私有化部署,快速搭建属于自己的 AI Bot 开发平台。

目录结构
全文