mirror of
https://github.com/fastapiadmin/FastapiAdmin.git
synced 2026-10-13 20:51:09 +00:00
部署方式:服务器不再接收源码、不执行构建,改为本地构建成品后交付
- deploy-artifacts.sh:构建→备份→校验→原子替换,支持回滚、镜像/备份轮转、
mysql 与 postgres 双变体镜像;后端以 docker save|ssh|docker load 交付
- 依赖分组:requirements/{base,storage}.txt + db/{mysql,postgres,sqlite}.txt,
镜像按所选数据库只装对应驱动(MySQL 变体 565MB → 521MB)
编排与运行时加固
- compose:MySQL/Redis/backend 端口仅绑 127.0.0.1;密钥(SECRET_KEY、
DATA_ENCRYPTION_KEY、DATA_ENCRYPTION_OLD_KEYS)、PROD_CORS_ORIGINS、
FORWARDED_ALLOW_IPS、DEMO_ENABLE 一律由 docker/.env 注入
- Dockerfile:对齐依赖分组、以非 root(uid=1000) 运行;.dockerignore 排除全部真实 .env.*
- nginx:静态资源长缓存、隐藏文件拒绝、接口文档仅内网可访问、放行 ACME http-01 校验路径
工程基建
- 新增 CI:backend(uv sync + ruff + pytest)与 frontend(web type-check+vitest、app type-check)
- 新增 DEPLOYMENT.md 运维手册(部署/回滚/密钥轮换/每日巡检/证书/排查)
79 lines
933 B
Plaintext
Executable File
79 lines
933 B
Plaintext
Executable File
__pycache__
|
|
*.pyc
|
|
*.pyo
|
|
*.pyd
|
|
.Python
|
|
|
|
.vscode
|
|
.idea
|
|
.DS_Store
|
|
*.log
|
|
*.local
|
|
|
|
*.egg
|
|
*.egg-info
|
|
dist
|
|
build
|
|
eggs
|
|
.eggs
|
|
*.manifest
|
|
*.spec
|
|
pip-log.txt
|
|
pip-delete-this-directory.txt
|
|
.Python
|
|
|
|
.mypy_cache
|
|
.pytest_cache
|
|
.ruff_cache
|
|
.coverage
|
|
htmlcov
|
|
.tox
|
|
.nox
|
|
coverage.xml
|
|
*.cover
|
|
.hypothesis
|
|
.pytype
|
|
cython_debug
|
|
|
|
venv
|
|
.venv
|
|
|
|
node_modules
|
|
.npm
|
|
.pnpm-store
|
|
.pnpm-debug.log
|
|
|
|
backend/logs
|
|
backend/*.db
|
|
# 用户上传目录,禁止入库
|
|
backend/static/upload/
|
|
backend/env/.env.dev
|
|
backend/env/.env.prod
|
|
backend/env/.env.test
|
|
|
|
docker/.env
|
|
docker/nginx/app/dist
|
|
docker/nginx/docs/dist
|
|
docker/nginx/web/dist
|
|
docker/nginx/ssl/*
|
|
!docker/nginx/ssl/.gitkeep
|
|
|
|
frontend/web/.env
|
|
frontend/web/.env.development
|
|
frontend/web/.env.production
|
|
|
|
# frontend/docs/*
|
|
!frontend/docs/.gitkeep
|
|
|
|
# frontend/app/*
|
|
!frontend/app/.gitkeep
|
|
|
|
.plan
|
|
CLAUDE.md
|
|
AGENTS.md
|
|
.codebuddy
|
|
.agent
|
|
.workbuddy
|
|
# AgentTeams 协作运行期状态(本地,不入库)
|
|
.agent-teams/
|