rates/docker-compose.yml
jtricerolph 3c4bc633fe Revert to headed Chrome + Xvfb; add shm_size 256m to fix Xvfb in Docker
Headless mode gets blocked by Cloudflare on the search endpoint. Headed
mode with Xvfb works on dev (Unraid). The missing piece on Proxmox LXC was
insufficient /dev/shm (Docker default 64 MB); setting shm_size: 256m gives
Xvfb enough shared memory to start.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-09 17:36:27 +00:00

43 lines
1.2 KiB
YAML

services:
backend:
build: ./backend
security_opt:
- apparmor=unconfined
shm_size: '256m'
environment:
- DATABASE_URL=${DATABASE_URL}
- CENTRAL_AUTH_SECRET=${CENTRAL_AUTH_SECRET}
- APP_SLUG=rates
- SETTINGS_URL=${SETTINGS_URL:-}
- SETTINGS_SECRET=${SETTINGS_SECRET:-}
# Residential proxy for the Booking.com scraper (empty = direct connection).
- BOOKING_PROXY_HOST=${BOOKING_PROXY_HOST:-}
- BOOKING_PROXY_PORT=${BOOKING_PROXY_PORT:-823}
- BOOKING_PROXY_USERNAME=${BOOKING_PROXY_USERNAME:-}
- BOOKING_PROXY_PASSWORD=${BOOKING_PROXY_PASSWORD:-}
- BOOKING_PROXY_COUNTRY=${BOOKING_PROXY_COUNTRY:-gb}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 15s
timeout: 10s
retries: 10
start_period: 60s
restart: unless-stopped
frontend:
build:
context: ./frontend
args:
VITE_HOTEL_NAME: ${VITE_HOTEL_NAME:-Hotel}
security_opt:
- apparmor=unconfined
ports:
- "${FRONTEND_PORT:-3080}:80"
depends_on:
backend:
condition: service_healthy
restart: unless-stopped
networks:
default:
driver: bridge