services: web: container_name: kanbangit-web build: context: . dockerfile: ./docker/nginx/Dockerfile restart: unless-stopped ports: - "8080:80" volumes: - kanbangit-storage:/var/www/storage:ro - kanbangit-public-assets:/var/www/public/build:ro env_file: - .env.production networks: - kanbangit-web depends_on: php-fpm: condition: service_healthy php-fpm: container_name: kanbangit-php-fpm build: context: . dockerfile: ./docker/php-fpm/Dockerfile target: production restart: unless-stopped volumes: - kanbangit-storage:/var/www/storage - kanbangit-public-assets:/var/www/public/build env_file: - .env.production networks: - kanbangit-web - kanbangit-db healthcheck: test: ["CMD-SHELL", "php-fpm-healthcheck || exit 1"] interval: 10s timeout: 5s retries: 3 depends_on: mariadb: condition: service_healthy mariadb: container_name: kanbangit-db image: mariadb:11.4 restart: unless-stopped env_file: - .env.mariadb command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci volumes: - mariadb-data-production:/var/lib/mysql networks: - kanbangit-db healthcheck: test: [ "CMD", "healthcheck.sh", "--connect", "--innodb_initialized" ] start_period: 10s interval: 10s timeout: 5s retries: 3 networks: kanbangit-db: kanbangit-web: volumes: mariadb-data-production: kanbangit-storage: kanbangit-public-assets: