34 lines
986 B
Markdown
34 lines
986 B
Markdown
# soul-api Docker 部署
|
||
|
||
Docker 相关配置均在此目录,根目录仅保留 `deploy.py`。
|
||
|
||
## 文件说明
|
||
|
||
| 文件 | 用途 |
|
||
|------|------|
|
||
| `Dockerfile` | 多阶段构建(golang + alpine),需拉取 golang 镜像 |
|
||
| `Dockerfile.local` | 仅运行阶段,配合 `deploy.py --local-go` 使用本地 Go 编译 |
|
||
| `docker-compose.bluegreen.yml` | 蓝绿部署(8081/8082),含 Redis 7-alpine |
|
||
| `docker-compose.production.yml` | 生产单实例部署 |
|
||
| `docker-compose.yml` | 本地开发 Redis |
|
||
| `docker-deploy-remote.sh` | 服务器端蓝绿切换脚本 |
|
||
|
||
## 镜像版本
|
||
|
||
- **soul-api**:Go 1.25,alpine 3.19
|
||
- **Redis**:7-alpine(与 soul-api 一并打包上传,服务器无需拉取)
|
||
- **MySQL**:外部服务,不打包
|
||
|
||
## 用法
|
||
|
||
```bash
|
||
# 一键部署(蓝绿)
|
||
python deploy.py --mode docker
|
||
|
||
# 使用本地 Go 编译
|
||
python deploy.py --mode docker --local-go
|
||
|
||
# 本地启动 Redis
|
||
docker compose -f deploy/docker-compose.yml up -d
|
||
```
|