Archived
在框架迁移与模块拆分前保存当前可运行状态: - 后端:main.py/auth_routes.py/auth_system.py/music_api.py/music_downloader.py/podcast_api.py/qr_login.py - 前端:templates/index.html + static/site_auth.js - 部署:Dockerfile/docker-compose.yml/entrypoint.sh/requirements.txt 敏感数据(data/、cookie.txt)与内部文档(交接文档/新会话引导)按 .gitignore 排除。
14 lines
732 B
Bash
14 lines
732 B
Bash
#!/bin/sh
|
||
# F59:exec 让 python 成为 PID 1 直接接收 SIGTERM,容器停止不再经 shell 转发而超时
|
||
# 第 93 条(P2-4):compose 挂载 ./user_cookie.txt 时若宿主不存在该文件,Docker 会
|
||
# 在启动前创建同名**目录**并挂载——容器内 touch 只对无卷 docker run 有效。
|
||
# 第 97 条(P3):检测到同名目录直接报错退出(fail-fast),不再静默带病运行
|
||
for f in user_cookie.txt cookie.txt; do
|
||
if [ -d "/app/$f" ]; then
|
||
echo "FATAL: /app/$f 是目录(宿主机缺文件时 Docker 挂载会建同名目录)。请在宿主机先 touch 该文件再启动。" >&2
|
||
exit 1
|
||
fi
|
||
[ -f "/app/$f" ] || touch "/app/$f"
|
||
done
|
||
exec python3 main.py
|