自建 Claude Code 镜像!一站式开源中转服务!
大家好,我是 Java陈序员。
对于依赖 Claude 进行代码开发、内容创作的开发者来说,稳定且安全的访问体验,直接决定了工作效率。但官方服务的地区限制、第三方镜像的隐私风险、拼车套餐的成本模糊,成了绕不开的坎。
今天,给大家介绍一款开源的 Claude 中转服务,适用于自建 Claude 镜像!
关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。
项目介绍
claude-relay-service —— 一个用于自行搭建 Claude API 中转服务的开源项目,让 Claude、OpenAI、Gemini、Droid 订阅统一接入,支持拼车共享,原生工具无缝使用。
功能特色:
- 多账户智能调度:支持添加多个 Claude、OpenAI、Gemini、Droid 账户,支持自动轮换使用,账户异常时自动切换备用账户
- 精细化权限管控:自定义 API Key 生成,为每个用户/团队分配独立 API Key,支持设置 Token 限额、并发数、速率限制
- 全维度使用统计:按 API Key/账户/模型多维度统计,精准记录请求数、Token 消耗,支持生成 30 天+ 历史使用数据,同时支持会话分析能力,追踪账户请求会话、活跃窗口、API Key 使用频次
- 一键化部署与管理:支持 Docker 部署,使用 Docker Compose 一键即可启动,同时提供便捷的运维脚本
- 多渠道告警通知:当出现账户异常、额度不足、请求超时,触发预警通知,支持企业微信、钉钉、飞书、Slack、Discord、SMTP 邮件等多平台 Webhook 通知
技术栈:Node.js + Redis + Vue3 + Vite + Docker
快速上手
claude-relay-service 支持 Docker 部署,可直接通过 Docker 快速部署体验。
1、下载 docker-compose.yaml 文件
curl -fsSL https://pincc.ai/crs-compose.sh -o crs-compose.sh && chmod +x crs-compose.sh && ./crs-compose.sh
2、或者手动创建 docker-compose.yaml 文件,并粘贴如下内容:
version: '3.8'
services:
# 🚀 Claude Relay Service
claude-relay:
build: .
image: weishaw/claude-relay-service:latest
restart: unless-stopped
ports:
- "${BIND_HOST:-0.0.0.0}:${PORT:-3000}:3000"
volumes:
- ./logs:/app/logs
- ./data:/app/data
environment:
- NODE_ENV=production
- PORT=3000
- HOST=0.0.0.0
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_PASSWORD=${REDIS_PASSWORD:-}
- REDIS_DB=${REDIS_DB:-0}
- REDIS_ENABLE_TLS=${REDIS_ENABLE_TLS:-}
- JWT_SECRET=p0n53FalFL0D18SVptQ05yJaAVFE9VEy
- ENCRYPTION_KEY=WKnqiIzgyvo0etDtO5ZT6WXJt8QeH9hy
- ADMIN_SESSION_TIMEOUT=${ADMIN_SESSION_TIMEOUT:-86400000}
- API_KEY_PREFIX=${API_KEY_PREFIX:-cr_}
- ADMIN_USERNAME=${ADMIN_USERNAME:-}
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
- DEFAULT_PROXY_TIMEOUT=${DEFAULT_PROXY_TIMEOUT:-60000}
- MAX_PROXY_RETRIES=${MAX_PROXY_RETRIES:-3}
- DEFAULT_TOKEN_LIMIT=${DEFAULT_TOKEN_LIMIT:-1000000}
- LOG_LEVEL=${LOG_LEVEL:-info}
- LOG_MAX_SIZE=${LOG_MAX_SIZE:-10m}
- LOG_MAX_FILES=${LOG_MAX_FILES:-5}
- CLEANUP_INTERVAL=${CLEANUP_INTERVAL:-3600000}
- TOKEN_USAGE_RETENTION=${TOKEN_USAGE_RETENTION:-2592000000}
- HEALTH_CHECK_INTERVAL=${HEALTH_CHECK_INTERVAL:-60000}
- TIMEZONE_OFFSET=${TIMEZONE_OFFSET:-8}
- DEBUG=${DEBUG:-false}
- ENABLE_CORS=${ENABLE_CORS:-true}
- TRUST_PROXY=${TRUST_PROXY:-true}
# 🎯 Claude API 配置
- CLAUDE_API_URL=${CLAUDE_API_URL:-https://api.anthropic.com/v1/messages}
- CLAUDE_API_VERSION=${CLAUDE_API_VERSION:-2023-06-01}
- CLAUDE_BETA_HEADER=${CLAUDE_BETA_HEADER:-claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,fine-grained-tool-streaming-2025-05-14}
depends_on:
- redis
networks:
- claude-relay-network
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
interval: 30s
timeout: 10s
retries: 3
# 📊 Redis Database
redis:
image: redis:7-alpine
restart: unless-stopped
expose:
- "6379"
volumes:
- ./redis_data:/data
command: redis-server --save 60 1 --appendonly yes --appendfsync everysec
networks:
- claude-relay-network
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 30s
timeout: 10s
retries: 3
volumes:
prometheus_data:
driver: local
grafana_data:
driver: local
networks:
claude-relay-network:
driver: bridge
3、docker-compose.yaml 文件已包含:
- 自动初始化管理员账号
- 数据持久化(logs 和 data 目录自动挂载)
- Redis 数据库(如果已有外部 Redis 服务,可移除,并修改环境变量中 Redis 相关的连接参数)
- 健康检查
- 自动重启
环境变量:
- 必填项:
- JWT_SECRET: JWT 密钥,至少 32 个字符
- ENCRYPTION_KEY: 加密密钥,必须是 32 个字符
- 可选项:
- ADMIN_USERNAME: 管理员用户名(不设置则自动生成)
- ADMIN_PASSWORD: 管理员密码(不设置则自动生成)
4、运行启动服务
docker compose up -d
5、查看服务日志
docker compose logs -f
6、服务启动成功后,浏览器访问
http://{IP/域名}:3000
7、自动生成的管理员用户名密码可通过查看挂载文件获取
cat ./data/init.json
功能体验
- 统计查询

- 仪表盘

- API Keys


- 账户管理


- 额度卡

- 系统设置


本地开发
项目依赖 Node.js 和 Redis, 需提前进行安装。
1、克隆或下载项目源码
git clone https://github.com/Wei-Shaw/claude-relay-service.git
2、进入项目根目录并安装依赖
cd claude-relay-service
npm install
3、复制配置文件,并修改文件名
cp config/config.example.js config/config.js
cp .env.example .env
4、修改编辑 .env 配置文件
# 这两个密钥随便生成,但要记住
JWT_SECRET=JWT生成密钥
ENCRYPTION_KEY=32位的加密密钥随便写
# Redis配置
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
5、安装前端依赖并构建
# 安装前端依赖
npm run install:web
# 构建前端(生成 dist 目录)
npm run build:web
6、启动服务
# 初始化,会随机生成后台账号密码信息,存储在 data/init.json
npm run setup
# 启动服务
npm run dev
7、服务启动成功后,浏览器访问
http://localhost:3000
如果你也想摆脱 Claude 使用的各种限制,拥有专属、安全、稳定的 API 中转服务,不妨试试 claude-relay-service,开源免费,自定义程度拉满,从此用 Claude 更省心!
项目地址:https://github.com/Wei-Shaw/claude-relay-service
最后
推荐的开源项目已经收录到 GitHub 项目,欢迎 Star:
https://github.com/chenyl8848/great-open-source-project
或者访问网站,进行在线浏览:
https://chencoding.top:8090/#/

我创建了一个开源项目交流群,方便大家在群里交流、讨论开源项目。
但是任何人在群里打任何广告,都会被 T 掉。
如果你对这个交流群感兴趣或者在使用开源项目中遇到问题,可以通过如下方式进群:
关注微信公众号:【Java陈序员】,回复【开源项目交流群】进群,或者通过公众号下方的菜单添加个人微信,并备注【开源项目交流群】,通过后拉你进群。
大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!
claude-relay-service —— 一个用于自行搭建 Claude API 中转服务的开源项目,让 Claude、OpenAI、Gemini、Droid 订阅统一接入,支持拼车共享,原生工具无缝使用。
浙公网安备 33010602011771号