Files
2026-10-04 15:25:03 +02:00

94 lines
2.3 KiB
YAML

services:
# 1. PHP Laravel App (Nutzt jetzt das lokale Dockerfile aus dem letzten Schritt)
laravel-app:
build: /volume2/laravel-stack/
container_name: laravel-app
restart: unless-stopped
volumes:
- /volume2/laravel-stack/app:/var/www/html
networks:
- laravel-network
# 2. Der Laravel-Scheduler
laravel-scheduler:
build: /volume2/laravel-stack/
container_name: laravel-scheduler
restart: unless-stopped
volumes:
- /volume2/laravel-stack/app:/var/www/html
command: php /var/www/html/artisan schedule:work
depends_on:
- laravel-app
networks:
- laravel-network
# 3. Caddy Webserver
caddy:
image: caddy:2-alpine
container_name: caddy-server
restart: unless-stopped
ports:
- "8080:80"
- "8443:443"
volumes:
- /volume2/laravel-stack/caddy/Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data # Verwaltet durch Docker (Sicher vor Rechteregeln)
- /volume2/laravel-stack/app:/var/www/html
depends_on:
- laravel-app
networks:
- laravel-network
# 4. MariaDB Datenbank (Port 3306 offen für Ihren Import!)
mariadb:
image: mariadb:11-noble
container_name: mariadb-db
restart: unless-stopped
ports:
- "3306:3306"
environment:
MYSQL_ROOT_PASSWORD: salam
MYSQL_DATABASE: nuhodds_fi4
MYSQL_USER: root
MYSQL_PASSWORD: salam
volumes:
- mariadb_data:/var/lib/mysql # Verwaltet durch Docker (Sicher vor Rechteregeln)
networks:
- laravel-network
# 5. MongoDB Datenbank
mongodb:
image: mongo:latest
container_name: mongodb-db
restart: unless-stopped
user: "0:0"
ports:
- "27017:27017"
volumes:
- mongo_nopass_data:/data/db # Verwaltet durch Docker (Sicher vor Rechteregeln)
networks:
- laravel-network
flaresolverr:
image: ghcr.io/flaresolverr/flaresolverr:latest
container_name: flaresolverr
restart: unless-stopped
ports:
- "8191:8191"
environment:
- LOG_LEVEL=info
- TZ=Europe/Berlin
- LANG=en-US
networks:
- laravel-network
networks:
laravel-network:
driver: bridge
# Hier weisen wir Docker an, die Ordner im geschützten Docker-Speicher zu erstellen
volumes:
mariadb_data:
mongo_nopass_data:
caddy_data: