InfluxOW/laravel_ddd_ecommerce

View on GitHub
docker-compose.override.yml

Summary

Maintainability
Test Coverage
# For more information: https://laravel.com/docs/sail
services:
    application:
        environment:
            XDEBUG_MODE: ${SAIL_XDEBUG_MODE}
            XDEBUG_CONFIG: ${SAIL_XDEBUG_CONFIG}
            PHP_IDE_CONFIG: serverName=${APP_NAME} # https://github.com/laravel/sail/issues/385
        ports:
            - ${APP_PORT}:80
            - ${APP_DEBUG_PORT}:8000
        extra_hosts:
            - host.docker.internal:host-gateway
        volumes:
            - ${HOME}/.config/composer/auth.json:/home/sail/.config/composer/auth.json
        depends_on:
            database:
                condition: service_healthy
            redis:
                condition: service_healthy
            rabbitmq:
                condition: service_healthy
            mailhog:
                condition: service_healthy
            elasticsearch:
                condition: service_healthy
        healthcheck:
            test: >
                curl --silent --fail 0.0.0.0:8000 >/dev/null || exit 1
            retries: 3
            timeout: 5s
        networks:
            - sail

    database:
        ports:
            - ${FORWARD_DB_PORT}:5432
        volumes:
            - database:/var/lib/postgresql/data
        networks:
            - sail

    redis:
        ports:
            - ${FORWARD_REDIS_PORT}:6379
        volumes:
            - redis:/data
        networks:
            - sail

    rabbitmq:
        image: rabbitmq:${RABBITMQ_VERSION}-management
        ports:
            - ${FORWARD_RABBITMQ_HTTP_PORT}:15672
            - ${FORWARD_RABBITMQ_AMQP_PORT}:5672
        volumes:
            - rabbitmq:/var/lib/rabbitmq/
        environment:
            RABBITMQ_DEFAULT_USER: ${RABBITMQ_USER}
            RABBITMQ_DEFAULT_PASS: ${RABBITMQ_PASSWORD}
            RABBITMQ_DEFAULT_VHOST: ${RABBITMQ_VHOST}
        healthcheck:
            test: >
                rabbitmq-diagnostics --quiet ping || exit 1
            retries: 3
            timeout: 5s
        networks:
            - sail

    mailhog:
        image: mailhog/mailhog:latest
        ports:
            - ${FORWARD_MAILHOG_PORT}:1025
            - ${FORWARD_MAILHOG_DASHBOARD_PORT}:8025
        healthcheck:
            test: >
                wget --server-response --quiet --output-document=- 0.0.0.0:8025 >/dev/null || exit 1
            retries: 3
            timeout: 5s
        networks:
            - sail

    elasticsearch:
        environment:
            http.cors.enabled: "true"
            http.cors.allow-origin: '"*"'
        ports:
            - ${FORWARD_ELASTICSEARCH_HTTP_PORT}:9200
        volumes:
            - elasticsearch:/usr/share/elasticsearch/data
        networks:
            - sail

    elasticvue:
        image: cars10/elasticvue:latest
        ports:
            - ${FORWARD_ELASTICVUE_PORT}:8080
        healthcheck:
            test: >
                wget --server-response --quiet --output-document=- 0.0.0.0:8080 >/dev/null || exit 1
            retries: 3
            timeout: 5s
        depends_on:
            elasticsearch:
                condition: service_healthy
        networks:
            - sail

    kibana:
        image: kibana:${ELK_STACK_VERSION}
        environment:
            ELASTICSEARCH_HOSTS: http://elasticsearch:9200
            NODE_OPTIONS: --max-old-space-size=${KIBANA_MEMORY_LIMIT}
        ports:
            - ${FORWARD_KIBANA_PORT}:5601
        volumes:
            - kibana:/usr/share/kibana/data
        healthcheck:
            test: >
                curl --silent --fail 0.0.0.0:5601 >/dev/null || exit 1
            retries: 3
            timeout: 5s
        depends_on:
            elasticsearch:
                condition: service_healthy
        networks:
            - sail

    phpcacheadmin:
        image: robinn/phpcacheadmin:latest
        environment:
            PCA_REDIS_0_NAME: ${APP_NAME}
            PCA_REDIS_0_HOST: redis
            PCA_REDIS_0_PORT: 6379
        ports:
            - ${FORWARD_PHPCACHEADMIN_PORT}:80
        depends_on:
            redis:
                condition: service_healthy
        networks:
            - sail

networks:
    sail:
        driver: bridge

volumes:
    database:
        driver: local
    redis:
        driver: local
    rabbitmq:
        driver: local
    elasticsearch:
        driver: local
    kibana:
        driver: local