services: caddy: image: caddy:2.9.1 restart: unless-stopped cap_add: - NET_ADMIN ports: - "80:80" - "443:443" - "443:443/udp" volumes: - $PWD/bash/caddy:/etc/caddy - $PWD/bash/certs:/etc/ssl app: build: . restart: unless-stopped environment: SERVER_NAME: ":80" FRANKENPHP_CONFIG: "worker /app/public/index.php" CADDY_GLOBAL_OPTIONS: "auto_https off" APP_RUNTIME: "Runtime\\FrankenPhpSymfony\\Runtime" volumes: - $PWD:/app tty: true depends_on: database: condition: service_healthy redis: image: redis:latest volumes: - redis_data:/data command: redis-server --maxmemory 512MB restart: unless-stopped # worker: # build: # dockerfile: docker/Dockerfile.worker # context: . # volumes: # - ./:/app # - ./var/downloads/movies:/var/download/movies # - ./var/downloads/tvshows:/var/download/tvshows # command: -vvv --time-limit=3600 # env_file: # - .env # depends_on: # app: # condition: service_healthy # scheduler: # build: # dockerfile: docker/Dockerfile.scheduler # context: . # volumes: # - ./:/var/www # - ./var/download:/var/download # command: -vv --time-limit=3600 # depends_on: # app: # condition: service_healthy mercure: image: dunglas/mercure restart: unless-stopped ports: - "3000:80" environment: SERVER_NAME: ':80' MERCURE_PUBLISHER_JWT_KEY: '!ChangeThisMercureHubJWTSecretKey!' MERCURE_SUBSCRIBER_JWT_KEY: '!ChangeThisMercureHubJWTSecretKey!' MERCURE_EXTRA_DIRECTIVES: | cors_origins * anonymous command: /usr/bin/caddy run --config /etc/caddy/dev.Caddyfile volumes: - mercure_data:/data - mercure_config:/config database: image: mariadb:10.11.2 ports: - "3306:3306" volumes: - mysql:/var/lib/mysql environment: MYSQL_DATABASE: app MYSQL_USERNAME: app MYSQL_PASSWORD: password MYSQL_ROOT_PASSWORD: password healthcheck: test: [ "CMD", "mysqladmin" ,"ping", "-h", "localhost" ] interval: 5s timeout: 5s retries: 10 adminer: image: adminer ports: - "8081:8080" volumes: mysql: mercure_data: mercure_config: redis_data: