Files
SAE-BUT2-docker/docker-compose.yml
T
2026-01-28 15:16:07 +01:00

120 lines
2.8 KiB
YAML

services:
mariadb:
image: mariadb:latest
container_name: app-mariadb
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DATABASE}
ports:
- "3306:3306"
volumes:
- dbdata:/var/lib/mysql
restart: unless-stopped
php:
build:
context: ./docker/php
dockerfile: Dockerfile
container_name: app-php
extra_hosts:
- "host.docker.internal:host-gateway"
volumes:
- app-code:/var/www/app
environment:
- GIT_TOKEN=${GIT_TOKEN}
- BACKEND_GIT_REPO=${BACKEND_GIT_REPO}
- BACKEND_GIT_BRANCH=${BACKEND_GIT_BRANCH}
depends_on:
- mariadb
restart: unless-stopped
healthcheck:
test: [ "CMD-SHELL", "test -d /var/www/app/vendor && pidof php-fpm || exit 1" ]
interval: 5s
timeout: 3s
retries: 20
start_period: 120s
frontend:
build:
context: ./docker/frontend
dockerfile: Dockerfile
container_name: app-frontend
environment:
- GIT_TOKEN=${GIT_TOKEN}
- FRONTEND_GIT_REPO=${FRONTEND_GIT_REPO}
- FRONTEND_GIT_BRANCH=${FRONTEND_GIT_BRANCH}
volumes:
- app-code:/var/www/app
depends_on:
- php
restart: "no"
nginx:
image: nginx:alpine
container_name: app-nginx
volumes:
- app-code:/var/www/app
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
ports:
- "80:80"
depends_on:
php:
condition: service_healthy
frontend:
condition: service_completed_successfully
restart: unless-stopped
typesense:
image: typesense/typesense:29.0
container_name: app-typesense
restart: unless-stopped
ports:
- "8108:8108"
volumes:
- typesense-data:/data
environment:
- TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
command: '--data-dir /data --api-key=${TYPESENSE_API_KEY} --enable-cors'
backup:
build:
context: ./docker/backup
dockerfile: Dockerfile
container_name: app-backup
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DATABASE}
volumes:
- ./backups:/backups
restart: unless-stopped
reverb:
build:
context: ./docker/php
dockerfile: Dockerfile
container_name: app-reverb
environment:
- GIT_TOKEN=${GIT_TOKEN}
- BACKEND_GIT_REPO=${BACKEND_GIT_REPO}
- BACKEND_GIT_BRANCH=${BACKEND_GIT_BRANCH}
entrypoint: []
command: php artisan reverb:start --host=0.0.0.0 --port=8080
volumes:
- app-code:/var/www/app
ports:
- "8080:8080"
depends_on:
- php
- mariadb
restart: unless-stopped
volumes:
app-code:
dbdata:
typesense-data:
networks:
default:
ipam:
config:
- subnet: 192.168.200.0/24