Merge remote-tracking branch 'origin/development'
This commit is contained in:
@@ -7,6 +7,13 @@
|
||||
# 不要把真实密钥提交到仓库。
|
||||
# =============================================================================
|
||||
|
||||
# =============================================================================
|
||||
# Docker Compose(宿主机独立 Caddy 反代到本 API)
|
||||
# =============================================================================
|
||||
# 映射到宿主机的端口,默认 8000;与同机其它项目冲突时改为未占用端口,并在独立 Caddy 的 Caddyfile 中 reverse_proxy 到 127.0.0.1:该端口。
|
||||
# LIFE_ECHO_API_HOST_PORT=8000
|
||||
# 若 Caddy 跑在独立容器且非 host 网络,不要用 127.0.0.1,应把 Caddy 加入与本 compose 相同的 Docker 网络,并对 http://life-echo-api-prod:8000 做 reverse_proxy。
|
||||
|
||||
# =============================================================================
|
||||
# Logging(loguru sink 最低级别:TRACE / DEBUG / INFO / WARNING / ERROR / CRITICAL)
|
||||
# =============================================================================
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
{$CADDY_PRIMARY_DOMAIN:lifecho.worldsplats.com} {
|
||||
encode zstd gzip
|
||||
reverse_proxy api:8000
|
||||
}
|
||||
@@ -138,7 +138,7 @@ cd api
|
||||
cd api
|
||||
|
||||
# 1. 启动 PostgreSQL + Redis
|
||||
docker-compose -f docker-compose.dev.yml up -d
|
||||
docker compose -f docker-compose.dev.yml up -d
|
||||
|
||||
# 2. 安装依赖
|
||||
pip install -r requirements.txt
|
||||
@@ -178,10 +178,10 @@ cp .env .env.prod
|
||||
# 编辑 .env.prod
|
||||
|
||||
# 启动所有服务
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
|
||||
# 查看日志
|
||||
docker-compose logs -f
|
||||
docker compose logs -f
|
||||
```
|
||||
|
||||
服务启动后,访问:
|
||||
|
||||
@@ -213,9 +213,9 @@ main() {
|
||||
print_success "短信验证码功能部署完成!"
|
||||
echo
|
||||
print_info "后续步骤:"
|
||||
echo " 1. 使用 Docker 部署: docker-compose up -d"
|
||||
echo " 1. 使用 Docker 部署: docker compose up -d"
|
||||
echo " 2. 或使用 Systemd 部署: sudo systemctl start life-echo-api"
|
||||
echo " 3. 查看日志: docker-compose logs -f 或 journalctl -u life-echo-api -f"
|
||||
echo " 3. 查看日志: docker compose logs -f 或 journalctl -u life-echo-api -f"
|
||||
echo " 4. 运行测试: python test_sms_verification.py"
|
||||
echo " 5. 查看部署文档: docs/部署指南.md"
|
||||
echo
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# 开发环境 Docker Compose
|
||||
# 使用方法: docker-compose -f docker-compose.dev.yml up -d
|
||||
# 使用方法: docker compose -f docker-compose.dev.yml up -d
|
||||
|
||||
services:
|
||||
# PostgreSQL 数据库(pg17 + pgvector,memory 模块需要 vector 类型)
|
||||
|
||||
@@ -58,8 +58,10 @@ services:
|
||||
dockerfile: Dockerfile
|
||||
image: life-echo-api:latest
|
||||
container_name: life-echo-api-prod
|
||||
expose:
|
||||
- "8000"
|
||||
# 独立 Caddy(宿主机或其它 compose)经 HTTPS 反代;仅绑定本机回环,避免与机上其它项目端口直接对公网。
|
||||
# 若与 Cosmetic 等共用主机且 8000 已被占用,在 .env 中设置 LIFE_ECHO_API_HOST_PORT=其它端口并在 Caddyfile 中一致。
|
||||
ports:
|
||||
- "127.0.0.1:${LIFE_ECHO_API_HOST_PORT:-8000}:8000"
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
@@ -118,28 +120,6 @@ services:
|
||||
max-size: "10m"
|
||||
max-file: "3"
|
||||
|
||||
caddy:
|
||||
image: m.daocloud.io/docker.io/library/caddy:2-alpine
|
||||
container_name: life-echo-caddy
|
||||
depends_on:
|
||||
api:
|
||||
condition: service_healthy
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
volumes:
|
||||
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
||||
- caddy_data:/data
|
||||
- caddy_config:/config
|
||||
restart: always
|
||||
networks:
|
||||
- life-echo-network
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "10m"
|
||||
max-file: "3"
|
||||
|
||||
# Celery Beat(定时任务调度,可选)
|
||||
# celery-beat:
|
||||
# build:
|
||||
@@ -193,7 +173,3 @@ volumes:
|
||||
driver: local
|
||||
redis_data:
|
||||
driver: local
|
||||
caddy_data:
|
||||
driver: local
|
||||
caddy_config:
|
||||
driver: local
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
```bash
|
||||
cd api
|
||||
docker-compose -f docker-compose.dev.yml up -d
|
||||
docker compose -f docker-compose.dev.yml up -d
|
||||
```
|
||||
|
||||
验证 Redis 是否运行:
|
||||
@@ -138,13 +138,13 @@ cp .env .env.prod
|
||||
# 编辑 .env.prod 配置生产环境变量
|
||||
|
||||
# 启动所有服务
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
|
||||
# 查看日志
|
||||
docker-compose logs -f
|
||||
docker compose logs -f
|
||||
|
||||
# 停止服务
|
||||
docker-compose down
|
||||
docker compose down
|
||||
```
|
||||
|
||||
### 服务扩展
|
||||
@@ -153,7 +153,7 @@ docker-compose down
|
||||
|
||||
```bash
|
||||
# 启动额外的 worker
|
||||
docker-compose up -d --scale celery-worker=3
|
||||
docker compose up -d --scale celery-worker=3
|
||||
```
|
||||
|
||||
### 监控(可选)
|
||||
@@ -161,7 +161,7 @@ docker-compose up -d --scale celery-worker=3
|
||||
启用 Flower 监控面板:
|
||||
|
||||
1. 编辑 `docker-compose.yml`,取消 `flower` 服务的注释
|
||||
2. 重启服务:`docker-compose up -d`
|
||||
2. 重启服务:`docker compose up -d`
|
||||
3. 访问 http://localhost:5555 查看 Celery 任务监控
|
||||
|
||||
## 常见问题
|
||||
|
||||
@@ -207,7 +207,7 @@ volumes:
|
||||
|
||||
```bash
|
||||
cd api
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
#### 5.2 使用Systemd部署
|
||||
@@ -297,7 +297,7 @@ curl -X POST http://localhost:8000/api/auth/sms/send \
|
||||
|
||||
```bash
|
||||
# Docker部署
|
||||
docker-compose logs -f api
|
||||
docker compose logs -f api
|
||||
|
||||
# Systemd部署
|
||||
sudo journalctl -u life-echo-api -f
|
||||
@@ -541,7 +541,7 @@ SELECT
|
||||
|
||||
1. 停止新版本服务
|
||||
```bash
|
||||
docker-compose down
|
||||
docker compose down
|
||||
# 或
|
||||
sudo systemctl stop life-echo-api
|
||||
```
|
||||
@@ -558,7 +558,7 @@ git checkout previous-version
|
||||
|
||||
4. 重启服务
|
||||
```bash
|
||||
docker-compose up -d
|
||||
docker compose up -d
|
||||
# 或
|
||||
sudo systemctl start life-echo-api
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user