openEuler Linux部署 Coze 教程:对接本地 Ollama 构建智能助手

Coze(扣子)是字节跳动开源的智能助手开发平台,支持可视化编排对话流程、对接本地 / 云端大模型,与 Ollama+Dify 的组合不同,Coze 更侧重多轮对话、插件扩展和助手发布能力。本文将带你在已部署 Ollama 的欧拉 Linux 服务器上完成 Coze 的部署,并实现 Coze 对接本地 Ollama 模型的全流程。

一、前置准备:确认环境与依赖

1. 核心依赖要求

Coze 基于 Docker Compose 部署,需确保服务器已满足以下条件(若已部署 Dify,大部分依赖已满足):

依赖项 版本要求 备注
Docker 26.0+ 需解决 API 版本兼容问题
Docker Compose v2.20+ 推荐 v2.29.2
Ollama 已安装并正常运行 需配置0.0.0.0:11434监听
内存 ≥16GB Coze+Ollama(7B 模型)最低要求
存储空间 ≥30GB 存储 Coze 镜像、数据和模型
端口 9000/8080/5432 确保未被占用(默认端口)

2. 环境验证

# 验证Docker版本(API≥1.44)
docker version | grep "API version"

# 验证Docker Compose版本
docker-compose --version

# 验证Ollama服务状态(需active running)
systemctl status ollama

# 验证Ollama API可访问(返回模型列表)
curl http://127.0.0.1:11434/api/tags

二、步骤 1:下载 Coze 开源版部署配置

Coze 官方提供了 Docker Compose 部署方案,优先使用国内镜像源避免下载失败。

1. 创建 Coze 部署目录

# 创建专属目录,避免与Dify冲突
mkdir -p /opt/coze && cd /opt/coze

2. 下载 Coze 官方部署配置

Coze 的部署配置包含docker-compose.yml.env(环境变量),优先使用 GitHub 源,国内用户替换为 Gitee 镜像:

# 方式1:GitHub官方源(国际网络)
curl -fsSL https://raw.githubusercontent.com/coze-cloud/coze/main/docker-compose.yml -o docker-compose.yml
curl -fsSL https://raw.githubusercontent.com/coze-cloud/coze/main/.env.example -o .env

# 方式2:Gitee镜像源(国内推荐)
curl -fsSL https://gitee.com/coze-cloud/coze/raw/main/docker-compose.yml -o docker-compose.yml
curl -fsSL https://gitee.com/coze-cloud/coze/raw/main/.env.example -o .env

3. 修正配置文件(适配欧拉 Linux)

(1)修改.env 文件,配置基础参数
vim /opt/coze/.env

关键配置项修改(其余保持默认):

# 服务端口(避免与Dify的8000冲突,改为9000)
COZE_HTTP_PORT=9000

# 数据库配置(自定义密码,避免与Dify冲突)
POSTGRES_USER=coze
POSTGRES_PASSWORD=Coze123456
POSTGRES_DB=coze

# Redis配置
REDIS_PASSWORD=Coze123456

# 核心:配置Ollama作为默认模型(后续在界面配置,此处先占位)
MODEL_PROVIDER=ollama
OLLAMA_BASE_URL=http://[服务器内网IP]:11434
(2)修改 docker-compose.yml,适配欧拉 Linux
vim /opt/coze/docker-compose.yml

主要调整点:

  1. 增加容器重启策略:restart: always
  2. 调整数据库 / Redis 数据持久化路径;
  3. 确保镜像适配x86_64/aarch64架构。

完整修正版配置(可直接覆盖):

version: '3.8'

services:
  coze-api:
    image: bytecoze/coze-api:latest
    container_name: coze-api
    restart: always
    ports:
      - "${COZE_HTTP_PORT:-9000}:8080"
    environment:
      - GO_ENV=prod
      - DB_HOST=postgres
      - DB_PORT=5432
      - DB_USER=${POSTGRES_USER:-coze}
      - DB_PASSWORD=${POSTGRES_PASSWORD:-coze123456}
      - DB_NAME=${POSTGRES_DB:-coze}
      - REDIS_HOST=redis
      - REDIS_PORT=6379
      - REDIS_PASSWORD=${REDIS_PASSWORD:-coze123456}
      - OLLAMA_BASE_URL=${OLLAMA_BASE_URL:-http://127.0.0.1:11434}
    volumes:
      - ./volumes/api:/app/data
    depends_on:
      - postgres
      - redis
    networks:
      - coze-network

  coze-web:
    image: bytecoze/coze-web:latest
    container_name: coze-web
    restart: always
    ports:
      - "8080:80"
    depends_on:
      - coze-api
    networks:
      - coze-network

  postgres:
    image: postgres:15-alpine
    container_name: coze-postgres
    restart: always
    environment:
      - POSTGRES_USER=${POSTGRES_USER:-coze}
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD:-coze123456}
      - POSTGRES_DB=${POSTGRES_DB:-coze}
    volumes:
      - ./volumes/postgres:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-coze} -d ${POSTGRES_DB:-coze}"]
      interval: 10s
      timeout: 5s
      retries: 5
    networks:
      - coze-network

  redis:
    image: redis:7-alpine
    container_name: coze-redis
    restart: always
    command: redis-server --requirepass ${REDIS_PASSWORD:-coze123456}
    volumes:
      - ./volumes/redis:/data
    healthcheck:
      test: ["CMD", "redis-cli", "-a", "${REDIS_PASSWORD:-coze123456}", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5
    networks:
      - coze-network

networks:
  coze-network:
    driver: bridge

三、步骤 2:启动 Coze 服务

1. 拉取镜像并启动

cd /opt/coze

# 拉取最新镜像(国内用户需确保Docker镜像加速已配置)
docker-compose pull

# 后台启动所有服务
docker-compose up -d

# 查看容器状态(所有容器为Up即正常)
docker-compose ps

首次启动会下载 Coze 镜像(约 2GB),耐心等待;若拉取镜像失败,检查 Docker 镜像加速配置(参考之前的 Dify 教程)。

2. 验证 Coze 启动成功

# 查看API日志,确认无报错
docker-compose logs coze-api

# 测试API连通性(返回200即正常)
curl http://127.0.0.1:9000/health

3. 开放端口(欧拉 Linux 防火墙)

# 开放Coze前端端口8080和后端端口9000
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --add-port=9000/tcp --permanent
firewall-cmd --reload

四、步骤 3:初始化 Coze 并对接 Ollama

1. 访问 Coze 前端页面

打开浏览器,访问http://[服务器内网IP]:8080,首次访问会进入初始化页面:

  1. 创建管理员账号(输入邮箱、密码);
  2. 填写组织名称(如 “本地 Coze 平台”),完成初始化。

2. 配置 Ollama 作为 Coze 的模型提供商

步骤 1:进入模型配置页面
  1. 登录 Coze 后,点击左侧菜单栏「设置」→「模型管理」;
  2. 选择「自定义模型」→「添加模型」。
步骤 2:配置 Ollama 模型参数

以对接 Ollama 的 Llama 3 7B 为例,填写以下核心参数:

配置项 取值说明
模型名称 自定义(如 “Ollama-Llama3-7B”)
模型类型 选择「对话模型(Chat)」
模型标识 与 Ollama 模型名一致(如llama3,可通过ollama list查看)
API 基础 URL http://[服务器内网IP]:11434/v1(Ollama 兼容 OpenAI API 格式,必须加 /v1)
API Key 任意填写(Ollama 无需 API Key,填ollama-local即可)
最大上下文长度 8192(Llama 3 7B 默认值)
最大生成令牌数 1024
步骤 3:测试连接并保存

点击「测试连接」,提示 “连接成功” 后点击「保存」,至此 Coze 已成功对接本地 Ollama 模型。

关键注意事项

  1. Ollama 网络可达性
    • 必须确保 Ollama 配置了OLLAMA_HOST=0.0.0.0:11434(参考之前的 Ollama 教程);
    • Coze 容器需访问服务器内网 IP(不能用 127.0.0.1),否则会提示 “连接超时”。
  2. 模型标识一致性
    • 若 Ollama 的模型名是llama3:latest,Coze 的 “模型标识” 需填llama3:latest
    • 可通过ollama list查看本地模型的完整名称:
      ollama list
      

五、步骤 4:使用 Coze 构建第一个智能助手

1. 创建智能助手

  1. 点击左侧菜单栏「助手」→「新建助手」;
  2. 选择「空白助手」,命名为 “本地 Llama3 助手”;
  3. 点击「下一步」,进入助手编辑页面。

2. 绑定 Ollama 模型

  1. 在助手编辑页面,点击右侧「配置」→「模型选择」;
  2. 选择已配置的 “Ollama-Llama3-7B” 作为默认模型;
  3. 点击「保存」,完成模型绑定。

3. 测试智能助手

  1. 点击页面右侧「测试」按钮,进入聊天界面;
  2. 输入问题(如 “用 Python 写一个简单的欧拉 Linux 系统监控脚本”);
  3. Coze 会调用本地 Ollama 的 Llama3 模型返回回答,验证流程打通。

六、Coze 常用运维操作

1. 重启 / 停止 Coze 服务

cd /opt/coze

# 重启服务
docker-compose restart

# 停止服务
docker-compose down

# 停止并删除数据卷(谨慎:会清空所有数据)
docker-compose down -v

2. 备份 Coze 数据

# 备份数据目录(包含数据库、Redis、API数据)
tar -zcvf coze-backup-$(date +%Y%m%d).tar.gz /opt/coze/volumes

3. 更新 Coze 版本

cd /opt/coze

# 拉取最新配置
curl -fsSL https://raw.githubusercontent.com/coze-cloud/coze/main/docker-compose.yml -o docker-compose.yml

# 拉取最新镜像并重启
docker-compose pull
docker-compose up -d

4. 查看 Coze 日志

# 查看API日志(排查问题)
docker-compose logs -f coze-api

# 查看前端日志
docker-compose logs -f coze-web

七、常见问题排查

1. Coze 前端访问不了

  • 原因:8080 端口未开放 / 容器未启动;
  • 解决
    # 检查容器状态
    docker-compose ps
    # 重新开放端口
    firewall-cmd --add-port=8080/tcp --permanent && firewall-cmd --reload
    

2. Coze 测试连接 Ollama 失败

  • 原因 1:Ollama 未监听 0.0.0.0;解决:
    echo 'export OLLAMA_HOST=0.0.0.0:11434' >> /etc/profile
    source /etc/profile
    systemctl restart ollama
    
  • 原因 2:Coze 配置的 API URL 错误;解决:确保 URL 是http://服务器内网IP:11434/v1,而非 127.0.0.1。

3. Coze 启动后提示 “数据库连接失败”

  • 原因:PostgreSQL 容器未正常启动;
  • 解决
    # 查看数据库日志
    docker-compose logs coze-postgres
    # 重启数据库容器
    docker-compose restart coze-postgres
    

4. 调用模型时提示 “模型未找到”

  • 原因:Coze 的 “模型标识” 与 Ollama 实际模型名不一致;
  • 解决:执行ollama list查看模型名(如llama3:7b),在 Coze 中修改 “模型标识” 为完全一致的值。

八、总结

通过本文,你已在欧拉 Linux 上完成 “Ollama(本地大模型)+ Coze(智能助手平台)” 的部署,核心优势总结:

  1. 轻量化部署:基于 Docker Compose 一键拉起,无需复杂的环境配置;
  2. 本地化闭环:所有模型推理在本地完成,无需依赖云端 AI 服务;
  3. 功能差异化:Coze 相比 Dify 更侧重多轮对话编排、插件扩展和助手发布,适合构建复杂的智能助手。

后续可探索 Coze 的进阶功能:

  • 接入自定义插件(如调用本地脚本、访问数据库);
  • 配置多轮对话流程(可视化编排意图、槽位);
  • 将助手发布为 API 接口或网页端供外部调用。

若需更多帮助,可参考 Coze 官方文档:https://www.coze.com/docs/(开源版适配需参考 GitHub 仓库:https://github.com/coze-cloud/coze)。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐