feat: loading overlay on dashboard, RDP pooled session routing fix
- dashboard.html: overlay div moved before <script> so getElementById works; double rAF ensures browser paints spinner before navigation - main.py: pooled_rdp route fix — session_status now returns /svc/<slug>/ route and redirect_url for POOL: RDP sessions (was always ready instantly) - docker-compose.yml: parametrise env vars via .env for easier tuning Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+29
-13
@@ -30,7 +30,7 @@ services:
|
||||
api:
|
||||
build:
|
||||
context: ./app
|
||||
command: ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "6"]
|
||||
command: ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000", "--workers", "${UVICORN_WORKERS:-6}"]
|
||||
environment:
|
||||
DATABASE_URL: postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}
|
||||
SIGNING_KEY: ${SIGNING_KEY}
|
||||
@@ -41,14 +41,22 @@ services:
|
||||
PREWARM_POOL_SIZE: ${PREWARM_POOL_SIZE:-2}
|
||||
UNIVERSAL_POOL_SIZE: ${UNIVERSAL_POOL_SIZE:-0}
|
||||
WEB_POOL_SIZE: ${WEB_POOL_SIZE:-20}
|
||||
WEB_POOL_BUFFER: ${WEB_POOL_BUFFER:-10}
|
||||
X11VNC_FLAGS: ${X11VNC_FLAGS:--wait 5 -defer 5 -ncache 10 -threads}
|
||||
WEB_POOL_BUFFER: ${WEB_POOL_BUFFER:-2}
|
||||
X11VNC_FLAGS: ${X11VNC_FLAGS:--wait 5 -defer 5 -threads}
|
||||
MAX_ACTIVE_SERVICES_PER_USER: ${MAX_ACTIVE_SERVICES_PER_USER:-4}
|
||||
LOG_LEVEL: ${LOG_LEVEL:-INFO}
|
||||
GO_USER_LOCK_TIMEOUT_SECONDS: 8
|
||||
GO_POOL_LOCK_TIMEOUT_SECONDS: 20
|
||||
POOL_DISPATCH_RETRIES: 6
|
||||
ENABLE_STARTUP_MAINTENANCE: 0
|
||||
LOG_SLOW_REQUEST_MS: ${LOG_SLOW_REQUEST_MS:-2000}
|
||||
GO_USER_LOCK_TIMEOUT_SECONDS: ${GO_USER_LOCK_TIMEOUT_SECONDS:-8}
|
||||
GO_POOL_LOCK_TIMEOUT_SECONDS: ${GO_POOL_LOCK_TIMEOUT_SECONDS:-20}
|
||||
POOL_DISPATCH_RETRIES: ${POOL_DISPATCH_RETRIES:-6}
|
||||
POOL_DISPATCH_REQUEST_TIMEOUT_SECONDS: ${POOL_DISPATCH_REQUEST_TIMEOUT_SECONDS:-2.0}
|
||||
POOL_DISPATCH_SLEEP_SECONDS: ${POOL_DISPATCH_SLEEP_SECONDS:-0.3}
|
||||
TRAEFIK_INTERNAL_URL: ${TRAEFIK_INTERNAL_URL:-http://traefik}
|
||||
WEB_RESOLUTION_MIN_WIDTH: ${WEB_RESOLUTION_MIN_WIDTH:-1024}
|
||||
WEB_RESOLUTION_MIN_HEIGHT: ${WEB_RESOLUTION_MIN_HEIGHT:-720}
|
||||
WEB_RESOLUTION_MAX_WIDTH: ${WEB_RESOLUTION_MAX_WIDTH:-3840}
|
||||
WEB_RESOLUTION_MAX_HEIGHT: ${WEB_RESOLUTION_MAX_HEIGHT:-2160}
|
||||
ENABLE_STARTUP_MAINTENANCE: ${ENABLE_STARTUP_MAINTENANCE:-0}
|
||||
depends_on:
|
||||
- db
|
||||
volumes:
|
||||
@@ -83,14 +91,22 @@ services:
|
||||
PREWARM_POOL_SIZE: ${PREWARM_POOL_SIZE:-2}
|
||||
UNIVERSAL_POOL_SIZE: ${UNIVERSAL_POOL_SIZE:-0}
|
||||
WEB_POOL_SIZE: ${WEB_POOL_SIZE:-20}
|
||||
WEB_POOL_BUFFER: ${WEB_POOL_BUFFER:-10}
|
||||
X11VNC_FLAGS: ${X11VNC_FLAGS:--wait 5 -defer 5 -ncache 10 -threads}
|
||||
WEB_POOL_BUFFER: ${WEB_POOL_BUFFER:-2}
|
||||
X11VNC_FLAGS: ${X11VNC_FLAGS:--wait 5 -defer 5 -threads}
|
||||
MAX_ACTIVE_SERVICES_PER_USER: ${MAX_ACTIVE_SERVICES_PER_USER:-4}
|
||||
LOG_LEVEL: ${LOG_LEVEL:-INFO}
|
||||
GO_USER_LOCK_TIMEOUT_SECONDS: 8
|
||||
GO_POOL_LOCK_TIMEOUT_SECONDS: 20
|
||||
POOL_DISPATCH_RETRIES: 6
|
||||
ENABLE_STARTUP_MAINTENANCE: 0
|
||||
LOG_SLOW_REQUEST_MS: ${LOG_SLOW_REQUEST_MS:-2000}
|
||||
GO_USER_LOCK_TIMEOUT_SECONDS: ${GO_USER_LOCK_TIMEOUT_SECONDS:-8}
|
||||
GO_POOL_LOCK_TIMEOUT_SECONDS: ${GO_POOL_LOCK_TIMEOUT_SECONDS:-20}
|
||||
POOL_DISPATCH_RETRIES: ${POOL_DISPATCH_RETRIES:-6}
|
||||
POOL_DISPATCH_REQUEST_TIMEOUT_SECONDS: ${POOL_DISPATCH_REQUEST_TIMEOUT_SECONDS:-2.0}
|
||||
POOL_DISPATCH_SLEEP_SECONDS: ${POOL_DISPATCH_SLEEP_SECONDS:-0.3}
|
||||
TRAEFIK_INTERNAL_URL: ${TRAEFIK_INTERNAL_URL:-http://traefik}
|
||||
WEB_RESOLUTION_MIN_WIDTH: ${WEB_RESOLUTION_MIN_WIDTH:-1024}
|
||||
WEB_RESOLUTION_MIN_HEIGHT: ${WEB_RESOLUTION_MIN_HEIGHT:-720}
|
||||
WEB_RESOLUTION_MAX_WIDTH: ${WEB_RESOLUTION_MAX_WIDTH:-3840}
|
||||
WEB_RESOLUTION_MAX_HEIGHT: ${WEB_RESOLUTION_MAX_HEIGHT:-2160}
|
||||
ENABLE_STARTUP_MAINTENANCE: ${ENABLE_STARTUP_MAINTENANCE:-0}
|
||||
depends_on:
|
||||
- db
|
||||
volumes:
|
||||
|
||||
Reference in New Issue
Block a user