fix(deploy): pin Flask to 5000 so it does not clash with nginx on EasyPanel PORT=80

This commit is contained in:
Kunthawat Greethong
2026-08-28 20:11:19 +07:00
parent a17a8f3cc4
commit ffad4dfd8d

View File

@@ -4,9 +4,14 @@ set -e
# Start the Flask backend on 0.0.0.0:5000 (bind all interfaces so nginx can # Start the Flask backend on 0.0.0.0:5000 (bind all interfaces so nginx can
# proxy to it inside the container). DATA_DIR is /app/backend/data by default # proxy to it inside the container). DATA_DIR is /app/backend/data by default
# (a mounted volume makes it survive container recreate). # (a mounted volume makes it survive container recreate).
#
# NOTE: nginx owns port 80 (the inbound entrypoint EasyPanel exposes). We
# therefore pin Flask to 5000 explicitly and IGNORE the PORT env var — EasyPanel
# injects PORT=80, and if Flask also took 80 it would clash with nginx
# ("Address already in use"). nginx proxies /api -> 127.0.0.1:5000.
cd /app/backend cd /app/backend
export HOST="${HOST:-0.0.0.0}" export HOST="${HOST:-0.0.0.0}"
export PORT="${PORT:-5000}" export PORT="5000"
export PAPER_BIND_HOST="$HOST" export PAPER_BIND_HOST="$HOST"
# pid1 helper: run nginx in foreground + Flask subprocess so the container # pid1 helper: run nginx in foreground + Flask subprocess so the container