version: '3.8' services: app: build: context: . dockerfile: Dockerfile restart: unless-stopped ports: - "${APP_PORT:-8000}:80" environment: - APP_ENV=${APP_ENV:-production} - APP_DEBUG=${APP_DEBUG:-false} - APP_URL=${APP_URL} - DB_CONNECTION=${DB_CONNECTION:-mysql} - DB_HOST=${DB_HOST} - DB_PORT=${DB_PORT:-3306} - DB_DATABASE=${DB_DATABASE:-zemail} - DB_USERNAME=${DB_USERNAME:-zemail_user} - DB_PASSWORD=${DB_PASSWORD} - CACHE_STORE=${CACHE_STORE:-redis} - QUEUE_CONNECTION=${QUEUE_CONNECTION:-redis} - SESSION_DRIVER=${SESSION_DRIVER:-redis} - REDIS_HOST=${REDIS_HOST} - REDIS_PASSWORD=${REDIS_PASSWORD} - REDIS_PORT=${REDIS_PORT:-6379} healthcheck: test: [ "CMD", "curl", "-f", "http://localhost/health" ] interval: 30s timeout: 10s retries: 3 start_period: 30s volumes: - app-storage:/var/www/storage - app-public-tmp:/var/www/public/tmp volumes: app-storage: app-public-tmp: