services: laravel.test: build: context: ./vendor/laravel/sail/runtimes/8.5 dockerfile: Dockerfile args: WWWGROUP: "${WWWGROUP}" MYSQL_CLIENT: mariadb-client image: sail-8.5/app extra_hosts: - "host.docker.internal:host-gateway" ports: - "${APP_PORT:-80}:80" - "${VITE_PORT:-5173}:${VITE_PORT:-5173}" 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: - mariadb - redis - minio - mailpit mariadb: image: "mariadb:11" ports: - "${FORWARD_DB_PORT:-3306}:3306" environment: MYSQL_ROOT_PASSWORD: "${DB_PASSWORD}" MYSQL_ROOT_HOST: "%" MYSQL_DATABASE: "${DB_DATABASE}" MYSQL_USER: "${DB_USERNAME}" MYSQL_PASSWORD: "${DB_PASSWORD}" MYSQL_ALLOW_EMPTY_PASSWORD: "yes" volumes: - "sail-mariadb:/var/lib/mysql" - "./vendor/laravel/sail/database/mariadb/create-testing-database.sh:/docker-entrypoint-initdb.d/10-create-testing-database.sh" networks: - sail healthcheck: test: - CMD - healthcheck.sh - "--connect" - "--innodb_initialized" 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 minio: image: "minio/minio:latest" ports: - "${FORWARD_MINIO_PORT:-9000}:9000" - "${FORWARD_MINIO_CONSOLE_PORT:-8900}:8900" environment: MINIO_ROOT_USER: sail MINIO_ROOT_PASSWORD: password volumes: - "sail-minio:/data" networks: - sail command: 'minio server /data --console-address ":8900"' healthcheck: test: - CMD - mc - ready - local retries: 3 timeout: 5s mailpit: image: "axllent/mailpit:latest" ports: - "${FORWARD_MAILPIT_PORT:-1025}:1025" - "${FORWARD_MAILPIT_DASHBOARD_PORT:-8025}:8025" networks: - sail networks: sail: driver: bridge volumes: sail-mariadb: driver: local sail-redis: driver: local sail-minio: driver: local