https://github.com/leemysw/cc-image
Docker image for running Claude Code on NAS with Telegram/Discord channels, proxy support.
https://github.com/leemysw/cc-image
claude-code docker-image
Last synced: 26 days ago
JSON representation
Docker image for running Claude Code on NAS with Telegram/Discord channels, proxy support.
- Host: GitHub
- URL: https://github.com/leemysw/cc-image
- Owner: leemysw
- License: mit
- Created: 2026-03-21T02:24:37.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-03-21T15:31:09.000Z (3 months ago)
- Last Synced: 2026-03-22T05:51:04.607Z (3 months ago)
- Topics: claude-code, docker-image
- Language: Shell
- Homepage:
- Size: 9.77 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# NAS Claude Code
在 Synology NAS 上通过 Docker 部署 Claude Code,预装 Telegram / Discord 插件,实现通过聊天平台远程控制 Claude Code 进行开发。
## 特性
- Telegram / Discord 聊天频道接入
- SOCKS5 / HTTP / Shadowsocks 代理支持,可运行时热更新
- 支持第三方 API(智谱 BigModel 等)
- Crash 自动恢复
- Synology Container Manager 兼容
## 快速部署
### 1. 导入 docker-compose.yml
在 Synology Container Manager 中导入 `docker-compose.yml`,修改 `environment` 中的必填项:
```yaml
environment:
- ANTHROPIC_API_KEY=sk-ant-xxxxx # 必填
- TELEGRAM_BOT_TOKEN=123456:xxx # Telegram bot token
```
### 2. 启动容器
插件会在首次启动时自动安装,无需手动操作。
### 3. Pair 账号
在 Telegram / Discord 上向 bot 发送消息,按提示完成账号绑定。
## 环境变量
| 变量 | 必填 | 默认值 | 说明 |
|---|---|---|---|
| `ANTHROPIC_API_KEY` | 是 | | API Key |
| `ENABLE_TELEGRAM` | 否 | `true` | 启用 Telegram |
| `TELEGRAM_BOT_TOKEN` | 否 | | Telegram Bot Token |
| `ENABLE_DISCORD` | 否 | `false` | 启用 Discord |
| `DISCORD_BOT_TOKEN` | 否 | | Discord Bot Token |
| `ENABLE_PROXY` | 否 | `false` | 启用代理 |
| `PROXY_URL` | 否 | | 代理地址(覆盖 proxy.conf) |
| `ANTHROPIC_BASE_URL` | 否 | | 自定义 API 端点 |
| `ANTHROPIC_AUTH_TOKEN` | 否 | | 自定义认证 Token |
| `ANTHROPIC_DEFAULT_SONNET_MODEL` | 否 | | Sonnet 模型覆盖 |
| `ANTHROPIC_DEFAULT_OPUS_MODEL` | 否 | | Opus 模型覆盖 |
| `ANTHROPIC_DEFAULT_HAIKU_MODEL` | 否 | | Haiku 模型覆盖 |
| `CLAUDE_DANGEROUSLY_SKIP_PERMISSIONS` | 否 | `false` | 跳过权限确认 |
## 代理
支持 `socks5://`、`http://`、`ss://` 格式。
### 通过环境变量(启动时)
```yaml
environment:
- ENABLE_PROXY=true
- PROXY_URL=socks5://127.0.0.1:1080
```
### 运行时热更新
通过 Telegram 发消息让 CC 修改:
1. CC 编辑 `/proxy.conf` 写入新代理地址
2. CC 执行 `/reload-proxy.sh` 立即生效
无需重启容器。
## 文件结构
```
├── Dockerfile # 镜像构建
├── docker-compose.yml # 部署配置
├── entrypoint.sh # 启动入口
├── scripts/
│ ├── proxy.conf # 代理配置(内置,可运行时修改)
│ └── reload-proxy.sh # 代理热更新脚本
├── .github/workflows/ # CI/CD
│ └── docker-publish.yml # Tag 触发自动构建推送
├── .env.example # 环境变量模板
├── .dockerignore
└── .gitignore
```
## 限制
Channels 功能目前处于研究预览阶段(Research Preview),有以下限制:
- 需要 Claude Code **v2.1.80** 或更高版本
- 必须使用 **claude.ai 账号登录**
- **不支持** Console 和 API Key 认证
- Team 和 Enterprise 组织需要**手动启用**该功能
## License
MIT