services: laravel.test: build: context: ./docker/8.3 dockerfile: Dockerfile args: WWWGROUP: '${WWWGROUP}' # Force a specific node version NODE_VERSION: '20' image: sail-8.3/app extra_hosts: - 'host.docker.internal:host-gateway' ports: - '${APP_PORT:-80}:80' - '${VITE_PORT:-5173}:${VITE_PORT:-5173}' - '${REVERB_PORT:-8080}:${REVERB_SERVER_PORT:-8080}' environment: WWWUSER: '${WWWUSER}' LARAVEL_SAIL: 1 XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}' XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}' IGNITION_LOCAL_SITES_PATH: '${PWD}' volumes: - '.:/var/www/html' networks: - sail depends_on: - pgsql - redis pgsql: image: 'postgres:17' ports: - '${FORWARD_DB_PORT:-5432}:5432' environment: PGPASSWORD: '${DB_PASSWORD:-secret}' POSTGRES_DB: '${DB_DATABASE}' POSTGRES_USER: '${DB_USERNAME}' POSTGRES_PASSWORD: '${DB_PASSWORD:-secret}' volumes: - 'sail-pgsql:/var/lib/postgresql/data' - './docker/pgsql/create-testing-database.sql:/docker-entrypoint-initdb.d/10-create-testing-database.sql' networks: - sail healthcheck: test: - CMD - pg_isready - '-q' - '-d' - '${DB_DATABASE}' - '-U' - '${DB_USERNAME}' retries: 3 timeout: 5s redis: image: 'redis:alpine' ports: - '${FORWARD_REDIS_PORT:-6379}:6379' volumes: - 'sail-redis:/data' networks: - sail healthcheck: test: - CMD - redis-cli - ping retries: 3 timeout: 5s chrome: image: 'ghcr.io/browserless/chromium' ports: - '${BROWSERLESS_CHROME_PORT:-3000}:3000' networks: - sail environment: # More settings: https://docs.browserless.io/docker/config CONCURRENT: '${BROWSERLESS_CONCURRENT_SESSIONS:-10}' TOKEN: '${BROWSERLESS_TOKEN:-FooBarBaz}' TIMEOUT: '${BROWSERLESS_TIMEOUT:-30000}' QUEUED: '${BROWSERLESS_MAX_QUEUE_LENGTH:-10}' networks: sail: driver: bridge volumes: sail-pgsql: driver: local sail-redis: driver: local