v0.1.0: CRM/ERP 系统内测版本 - 安全加固完成

- Docker bridge 网络隔离(8000 端口封死)
- Gunicorn 4 Worker 多进程
- Alembic 数据库迁移基线
- 日志轮转 20m×3
- JWT 密钥 + DB 密码 + CORS 收紧
- 3-2-1 备份链路(NAS + R740-B 冷备)
- 连接池 pool_pre_ping + pool_recycle=3600
This commit is contained in:
hankin
2026-03-16 07:31:37 +00:00
commit 423baff73b
2578 changed files with 824643 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
FROM python:3.12-slim
WORKDIR /app
# 系统依赖(asyncpg 编译需要 gcc
RUN apt-get update \
&& apt-get install -y --no-install-recommends gcc libpq-dev \
&& rm -rf /var/lib/apt/lists/*
# 先拷贝依赖清单,利用 Docker 层缓存
COPY server/requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
# 拷贝全部后端代码
COPY server/ .
EXPOSE 8000
# 生产模式:Gunicorn 多进程管理 + UvicornWorker 异步处理
# -w 4: 4 个 Worker 进程充分利用多核
# --timeout 600: 兼容 AI SSE 流式长请求
# --graceful-timeout 30: 平滑重启时等待旧连接结束
CMD ["gunicorn", "app.main:app", \
"-k", "uvicorn.workers.UvicornWorker", \
"-w", "4", \
"--bind", "0.0.0.0:8000", \
"--timeout", "600", \
"--graceful-timeout", "30", \
"--access-logfile", "-"]