Claude Code + CC-Connect 合并 Docker 镜像:让 AI 编程助手接入消息平台

Claude Code + CC-Connect 合并 Docker 镜像:让 AI 编程助手接入消息平台

背景

Claude Code 是 Anthropic 推出的命令行 AI 编程工具,cc-connect 是一个消息平台桥接工具,能将 AI Agent 接入飞书、钉钉、Slack 等消息平台。将两者结合,可以实现通过聊天消息与 Claude Code 交互,随时随地完成编码任务。

但这两个工具的部署配置比较繁琐——需要分别安装 Node.js 环境、配置代理、设置消息平台。于是就有了这个项目:一键启动的 Docker 镜像,把 Claude Code 和 cc-connect 打包在一起

镜像信息

  • 仓库地址: crpi-vcoa0a0mmas9vmge.cn-hangzhou.personal.cr.aliyuncs.com/public_minsin/claude-code-with-cc-connect:1.1-arm64
  • 基础镜像: node:20
  • 架构支持: arm64 / amd64

功能特性

  • Claude Code 完整运行环境(支持 Opus / Sonnet / Haiku 模型)
  • cc-connect 消息平台桥接(飞书、钉钉、Slack 等)
  • Web 管理界面(端口 9820)
  • 预装开发工具:git、gh、fzf、ripgrep、bat、jq、python3、uv 等
  • 预装 code-index-mcp,支持代码索引

架构设计

┌─────────────────────────────────┐
│        Docker Container         │
│  ┌───────────┐ ┌─────────────┐  │
│  │Claude Code│ │  cc-connect │  │
│  │  (CLI)    │ │  (Bridge)   │  │
│  └─────┬─────┘ └──────┬──────┘  │
│        │              │         │
│  ┌─────┴──────────────┴──────┐  │
│  │    /workspace (挂载)      │  │
│  └───────────────────────────┘  │
│  Ports: 9820 (Web), 9810 (Bridge)│
└─────────────────────────────────┘

核心组件:

组件 说明
Claude Code CLI 通过 @anthropic-ai/claude-code npm 包安装
cc-connect 消息平台桥接,管理多平台会话
Web Admin 端口 9820,提供可视化管理界面
entrypoint.sh 启动脚本,自动初始化配置、修复权限

快速开始

1. 准备 cc-connect 配置

mkdir -p ~/.cc-connect
curl -o ~/.cc-connect/config.toml https://raw.githubusercontent.com/chenhg5/cc-connect/main/config.example.toml
# 编辑配置文件,添加消息平台凭据
vim ~/.cc-connect/config.toml

2. 启动容器

docker-compose up -d

3. 进入容器使用

# 进入容器 shell
docker-compose exec claude-code /bin/zsh

# 启动 Claude Code
claude

4. 访问 Web 管理界面

浏览器打开 http://localhost:9820,通过 Web UI 管理项目、会话和消息平台配置。

Docker Compose 配置

version: '3.8'
services:
  claude-code:
    image: crpi-vcoa0a0mmas9vmge.cn-hangzhou.personal.cr.aliyuncs.com/public_minsin/claude-code-with-cc-connect:1.1-arm64
    container_name: claude-code-with-cc-connect
    stdin_open: true
    tty: true
    ports:
      - "9820:9820"  # cc-connect Web UI
    environment:
      - TZ=Asia/Shanghai
    restart: unless-stopped

关键设计决策

entrypoint.sh 自动化

容器启动时自动完成以下操作:

  1. 权限修复 — 挂载目录可能因宿主机 UID 不同导致权限问题,使用无密码 sudo 自动修复
  2. 配置初始化 — 首次启动自动调用 cc-connect 生成默认配置,再通过 cc-connect web 启用管理界面
  3. 锁文件清理 — 自动删除残留的 .config.toml.lock,避免异常重启后锁冲突
  4. Token 注入 — 支持通过环境变量 CC_CONNECT_ADMIN_TOKEN 覆盖 Web 管理员 Token

预装工具链

容器内预装了完整的开发工具链,开箱即用:

工具 用途
git / gh 版本控制和 GitHub CLI
fzf 模糊搜索
ripgrep / fd-find 代码搜索
bat 带语法高亮的 cat
jq JSON 处理
python3 / uv Python 运行环境和包管理
code-index-mcp 代码索引 MCP 服务

多平台镜像支持

Dockerfile 使用 dpkg --print-architecture 动态检测架构,同一份 Dockerfile 支持 amd64 和 arm64 构建。

使用场景

场景 1:本地开发

在任意项目目录下启动容器,通过挂载当前目录作为工作区,直接在容器内使用 Claude Code 进行开发。

场景 2:消息平台集成

配置飞书/钉钉等平台凭据后,团队成员可以在聊天工具中 @机器人,直接向 Claude Code 下达编码任务,结果自动回复到群聊中。

场景 3:远程开发

将镜像部署到服务器,通过 Web UI 或 Bridge 端口远程管理 Claude Code 会话,无需 SSH 登录。

常用命令

# 启动
docker-compose up -d

# 停止
docker-compose down

# 进入容器
docker-compose exec claude-code /bin/zsh

# 查看日志
docker-compose logs -f

# 重启
docker-compose restart

# 更新 cc-connect(在容器内)
npm update -g cc-connect

总结

这个项目解决的核心问题是降低 Claude Code 与消息平台集成的部署门槛。通过 Docker 一键部署,将原本需要手动配置 Node.js 环境、安装多个 npm 包、配置消息平台的过程简化为一条 docker-compose up -d 命令。

适合希望将 AI 编程助手引入团队协作流程的开发者使用。


相关链接:

posted @ 2026-05-15 15:50  司野良  阅读(95)  评论(0)    收藏  举报