docker-compose.yml
# 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