name: investmoz-development services: app: build: context: ../../vendor/laravel/sail/runtimes/8.5 args: WWWGROUP: '${WWWGROUP:-1000}' NODE_VERSION: '24' POSTGRES_VERSION: '17' image: investmoz-development-php85 environment: &application WWWUSER: '${WWWUSER:-1000}' APP_ENV: local APP_DEBUG: 'false' APP_KEY: '${APP_KEY:?Generate the isolated development key first}' APP_URL: 'http://localhost:${PORTAL_PORT:-8088}' DB_CONNECTION: pgsql DB_HOST: postgres DB_PORT: '5432' DB_DATABASE: investmoz_development DB_USERNAME: investmoz DB_PASSWORD: '${DB_PASSWORD:?Generate a local database password first}' DB_URL: '' CACHE_STORE: database QUEUE_CONNECTION: database SESSION_DRIVER: database SESSION_SECURE_COOKIE: 'false' MAIL_MAILER: array PORTAL_NOTIFICATIONS_ENABLED: 'false' LOG_CHANNEL: stderr FILESYSTEM_DISK: local volumes: - ../..:/var/www/html - ./runtime.env.example:/var/www/html/.env:ro - application-storage:/var/www/html/storage - application-cache:/var/www/html/bootstrap/cache depends_on: postgres: condition: service_healthy healthcheck: test: ['CMD', 'curl', '--fail', 'http://127.0.0.1/up'] interval: 15s timeout: 5s retries: 5 web: image: nginx:stable-alpine ports: - '127.0.0.1:${PORTAL_PORT:-8088}:80' volumes: - ./nginx.conf:/etc/nginx/conf.d/default.conf:ro depends_on: app: condition: service_healthy queue: image: investmoz-development-php85 environment: <<: *application SUPERVISOR_PHP_COMMAND: '/usr/bin/php /var/www/html/artisan queue:work --sleep=3 --tries=3 --timeout=90' volumes: - ../..:/var/www/html - ./runtime.env.example:/var/www/html/.env:ro - application-storage:/var/www/html/storage - application-cache:/var/www/html/bootstrap/cache depends_on: app: condition: service_healthy postgres: image: postgis/postgis:17-3.5 environment: POSTGRES_DB: investmoz_development POSTGRES_USER: investmoz POSTGRES_PASSWORD: '${DB_PASSWORD:?Generate a local database password first}' volumes: - database:/var/lib/postgresql/data healthcheck: test: ['CMD-SHELL', 'pg_isready -U investmoz -d investmoz_development'] interval: 5s timeout: 5s retries: 10 volumes: database: application-storage: application-cache: