Merge remote-tracking branch 'origin/development'

This commit is contained in:
Kevin
2026-03-25 17:40:16 +08:00
12 changed files with 42 additions and 79 deletions

View File

@@ -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。
# =============================================================================
# Loggingloguru sink 最低级别TRACE / DEBUG / INFO / WARNING / ERROR / CRITICAL
# =============================================================================

View File

@@ -1,4 +0,0 @@
{$CADDY_PRIMARY_DOMAIN:lifecho.worldsplats.com} {
encode zstd gzip
reverse_proxy api:8000
}

View File

@@ -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
```
服务启动后,访问:

View File

@@ -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

View File

@@ -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 + pgvectormemory 模块需要 vector 类型)

View File

@@ -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

View File

@@ -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 任务监控
## 常见问题

View File

@@ -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
```