mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-23 00:53:33 +00:00
feat: 添加 Docker Hub 自动构建和改进部署体验
- 支持环境变量预设管理员账号密码 - 添加 docker-entrypoint.sh 自动初始化脚本 - 配置 GitHub Actions 自动构建多平台镜像(amd64, arm64) - 添加版本标签管理和自动发布流程 - 集成 Trivy 安全漏洞扫描 - 更新文档说明 Docker Hub 使用方法 - 优化 Docker 部署用户体验 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
118
README.md
118
README.md
@@ -6,6 +6,8 @@
|
||||
[](https://nodejs.org/)
|
||||
[](https://redis.io/)
|
||||
[](https://www.docker.com/)
|
||||
[](https://github.com/your-repo/claude-relay-service/actions/workflows/docker-publish.yml)
|
||||
[](https://hub.docker.com/r/yourusername/claude-relay-service)
|
||||
|
||||
**🔐 自行搭建Claude API中转服务,支持多账户管理**
|
||||
|
||||
@@ -195,6 +197,9 @@ module.exports = {
|
||||
```bash
|
||||
# 初始化
|
||||
npm run setup # 会随机生成后台账号密码信息,存储在 data/init.json
|
||||
# 或者通过环境变量预设管理员凭据:
|
||||
# export ADMIN_USERNAME=cr_admin_custom
|
||||
# export ADMIN_PASSWORD=your-secure-password
|
||||
|
||||
# 启动服务
|
||||
npm run service:start:daemon # 后台运行(推荐)
|
||||
@@ -205,13 +210,124 @@ npm run service:status
|
||||
|
||||
---
|
||||
|
||||
## 🐳 Docker 部署(推荐)
|
||||
|
||||
### 使用 Docker Hub 镜像(最简单)
|
||||
|
||||
```bash
|
||||
# 拉取镜像(支持 amd64 和 arm64)
|
||||
docker pull yourusername/claude-relay-service:latest
|
||||
|
||||
# 使用 docker run 运行
|
||||
docker run -d \
|
||||
--name claude-relay \
|
||||
-p 3000:3000 \
|
||||
-v $(pwd)/data:/app/data \
|
||||
-v $(pwd)/logs:/app/logs \
|
||||
-e ADMIN_USERNAME=my_admin \
|
||||
-e ADMIN_PASSWORD=my_secure_password \
|
||||
yourusername/claude-relay-service:latest
|
||||
|
||||
# 或使用 docker-compose(推荐)
|
||||
# 创建 docker-compose.yml 文件:
|
||||
cat > docker-compose.yml << 'EOF'
|
||||
version: '3.8'
|
||||
services:
|
||||
claude-relay:
|
||||
image: yourusername/claude-relay-service:latest
|
||||
container_name: claude-relay-service
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "3000:3000"
|
||||
environment:
|
||||
- REDIS_HOST=redis
|
||||
- ADMIN_USERNAME=${ADMIN_USERNAME:-}
|
||||
- ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
volumes:
|
||||
- ./logs:/app/logs
|
||||
- ./data:/app/data
|
||||
depends_on:
|
||||
- redis
|
||||
|
||||
redis:
|
||||
image: redis:7-alpine
|
||||
container_name: claude-relay-redis
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- redis_data:/data
|
||||
|
||||
volumes:
|
||||
redis_data:
|
||||
EOF
|
||||
|
||||
# 启动服务
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
### 从源码构建
|
||||
|
||||
```bash
|
||||
# 1. 克隆项目
|
||||
git clone https://github.com/your-repo/claude-relay-service.git
|
||||
cd claude-relay-service
|
||||
|
||||
# 2. 设置管理员账号密码(可选)
|
||||
# 方式一:自动生成(查看容器日志获取)
|
||||
docker-compose up -d
|
||||
|
||||
# 方式二:预设账号密码
|
||||
export ADMIN_USERNAME=cr_admin_custom
|
||||
export ADMIN_PASSWORD=your-secure-password
|
||||
docker-compose up -d
|
||||
|
||||
# 3. 查看管理员凭据
|
||||
# 自动生成的情况下:
|
||||
docker logs claude-relay-service | grep "管理员"
|
||||
|
||||
# 或者直接查看挂载的文件:
|
||||
cat ./data/init.json
|
||||
```
|
||||
|
||||
### Docker Compose 配置
|
||||
|
||||
docker-compose.yml 已包含:
|
||||
- ✅ 自动初始化管理员账号
|
||||
- ✅ 数据持久化(logs和data目录自动挂载)
|
||||
- ✅ Redis数据库
|
||||
- ✅ 健康检查
|
||||
- ✅ 自动重启
|
||||
|
||||
### 管理员凭据获取方式
|
||||
|
||||
1. **查看容器日志**(推荐)
|
||||
```bash
|
||||
docker logs claude-relay-service
|
||||
```
|
||||
|
||||
2. **查看挂载的文件**
|
||||
```bash
|
||||
cat ./data/init.json
|
||||
```
|
||||
|
||||
3. **使用环境变量预设**
|
||||
```bash
|
||||
# 在 .env 文件中设置
|
||||
ADMIN_USERNAME=cr_admin_custom
|
||||
ADMIN_PASSWORD=your-secure-password
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🎮 开始使用
|
||||
|
||||
### 1. 打开管理界面
|
||||
|
||||
浏览器访问:`http://你的服务器IP:3000/web`
|
||||
|
||||
默认管理员账号:data/init.json 中寻找
|
||||
管理员账号:
|
||||
- 自动生成:查看 data/init.json
|
||||
- 环境变量预设:通过 ADMIN_USERNAME 和 ADMIN_PASSWORD 设置
|
||||
- Docker 部署:查看容器日志 `docker logs claude-relay-service`
|
||||
|
||||
### 2. 添加Claude账户
|
||||
|
||||
|
||||
Reference in New Issue
Block a user