InfluxOW/laravel_ddd_ecommerce

View on GitHub
docker-compose.yml

Summary

Maintainability
Test Coverage
# For more information: https://laravel.com/docs/sail
services:
    application:
        build:
            context: ./docker/php
            dockerfile: Dockerfile
            args:
                WWWGROUP: ${WWWGROUP}
        image: ${APPLICATION_IMAGE}
        environment:
            WWWUSER: ${WWWUSER}
            LARAVEL_SAIL: 1
            GITHUB_ACTIONS: ${GITHUB_ACTIONS}
            GITHUB_EVENT_NAME: ${GITHUB_EVENT_NAME}
            GITHUB_REPOSITORY: ${GITHUB_REPOSITORY}
            GITHUB_REF: ${GITHUB_REF}
            INFECTION_DASHBOARD_API_KEY: ${INFECTION_DASHBOARD_API_KEY}
        volumes:
            - .:/var/www/html
            - ./crontab:/etc/cron.d/crontab
            - ./storage/phpinsights:/tmp/symfony-cache/phpinsights

    database:
        image: postgis/postgis:${POSTGRES_VERSION}
        environment:
            PGPASSWORD: ${DB_PASSWORD}
            POSTGRES_DB: ${DB_DATABASE}
            POSTGRES_USER: ${DB_USERNAME}
            POSTGRES_PASSWORD: ${DB_PASSWORD}
            POSTGRES_VERSION: ${POSTGRES_VERSION}
        healthcheck:
            test: >
                pg_isready --quiet --dbname=${DB_DATABASE} --username=${DB_USERNAME} || exit 1
            retries: 3
            timeout: 5s

    redis:
        image: redis:${REDIS_VERSION}
        environment:
            REDIS_VERSION: ${REDIS_VERSION}
        healthcheck:
            test: >
                redis-cli ping || exit 1
            retries: 3
            timeout: 5s

    elasticsearch:
        image: elasticsearch:${ELK_STACK_VERSION}
        environment:
            ES_JAVA_OPTS: -Xms${ELASTICSEARCH_HEAP_SIZE}m -Xmx${ELASTICSEARCH_HEAP_SIZE}m
            xpack.security.enabled: "false"
            discovery.type: single-node
        healthcheck:
            test: >
                curl -s -f 0.0.0.0:9200/_cat/health >/dev/null || exit 1
            retries: 3
            timeout: 5s