Enhance Docker Compose and NGINX configurations

- Added new environment variables for connection pooling in the .env file.
- Updated Docker Compose to ensure consistent naming conventions for containers and added health checks.
- Increased timeout settings in NGINX configuration for file uploads.
- Improved pgAdmin reverse proxy configuration to handle path rewrites.
- Added migration SQL file and updated helper documentation for database operations.
This commit is contained in:
2025-07-28 13:49:55 +00:00
parent 05f2f8aaa5
commit 005aedaba3
7 changed files with 462 additions and 6 deletions

View File

@@ -25,8 +25,9 @@ services:
timeout: 2s # Number of failures before marking as unhealthy
retries: 5 # Grace period before health checks start
pgadmin:
restart: always
image: dpage/pgadmin4
container_name: pgAdmin4_Ui
container_name: pgAdmin4-ui
user: "5050:5050"
# logging:
# driver: loki
@@ -90,7 +91,7 @@ services:
phoenix-app:
restart: always
image: "yurimatoslima/phoenix-frontend:alpha"
container_name: phoenixApp
container_name: phoenix-app
ports:
- "3000:3000" # Restrict to only allow access from Grafana Server IP
# logging:
@@ -111,7 +112,7 @@ services:
pgadmin:
condition: service_healthy
healthcheck:
test: ["CMD", "wget", "--spider", "-q", "http://phoenixApp/login"] # localhost checks that the NGINX server inside the container is serving something at the root
test: ["CMD", "wget", "--spider", "-q", "http://phoenix-app/login"] # localhost checks that the NGINX server inside the container is serving something at the root
interval: 10s # check every 10 seconds
timeout: 5s # allow 5 seconds per check
retries: 5 # mark as unhealthy after 5 failures
@@ -135,6 +136,7 @@ services:
- "REDIS_PASSWORD=${REDIS_PASSWORD}"
- RUN_JOB_QUEUE=${RUN_JOB_QUEUE}
- NODE_ENV=${NODE_ENV}
- PHX_HOST_NAME=${PHX_HOST_NAME}
command: ["npm", "run", "start:server"]
deploy:
replicas: ${PHOENIX_SYSTEM_REPLICAS} #change here if u want to have more replicas. Cant find a way to set via variable right now
@@ -180,6 +182,8 @@ services:
- "SUPER_ADMIN_USER_PASSWORD=${SUPER_ADMIN_USER_PASSWORD}"
- REDIS_PASSWORD=${REDIS_PASSWORD}
- NODE_ENV=${NODE_ENV}
- PHX_HOST_NAME=${PHX_HOST_NAME}
command: ['npm', 'run', 'start:worker']
depends_on:
phoenix-system:
condition: service_healthy
@@ -318,7 +322,7 @@ services:
# ports:
# - "9113:9113" # Restrict to only allow access from Grafana Server IP
# command:
# - '--nginx.scrape-uri=http://phoenixApp/stub_status'
# - '--nginx.scrape-uri=http://phoenix-app/stub_status'
# security_opt:
# - no-new-privileges:true
# deploy: