feat: respect PORT env variable for Coolify preview deployments

Nginx now listens on ${PORT} (default 7575) instead of hardcoded 7575,
so Coolify can inject a unique port per preview container. The internal
Next.js server is pinned to port 3000 to avoid conflicting with nginx.
This commit is contained in:
Thomas Camlong committed 2026-06-08 16:44:16 +02:00
1 parent a447a9f615
commit e004afa806
5 files changed
+12 -7

No files matched your search

+5 -3
View File
@@ -17,12 +17,14 @@ fi
# Auth secret is generated every time the container starts as it is required, but not used because we don't need JWTs or Mail hashing
export AUTH_SECRET=$(openssl rand -base64 32)
export PORT=${PORT:-7575}
# Start nginx proxy
# 1. Replace the HOSTNAME in the nginx template file
# 1. Replace the HOSTNAME and PORT in the nginx template file
# 2. Create the nginx configuration file from the template
# 3. Start the nginx server
export HOSTNAME
envsubst '${HOSTNAME}' < /etc/nginx/templates/nginx.conf > /etc/nginx/nginx.conf
envsubst '${HOSTNAME} ${PORT}' < /etc/nginx/templates/nginx.conf > /etc/nginx/nginx.conf
# Start services in the background and store their PIDs
nginx -g 'daemon off;' &
NGINX_PID=$!
@@ -36,7 +38,7 @@ else
REDIS_PID=$!
fi
node apps/nextjs/server.js &
PORT=3000 node apps/nextjs/server.js &
NEXTJS_PID=$!
# Function to handle SIGTERM and shut down services