49 lines
1.4 KiB
YAML
49 lines
1.4 KiB
YAML
services:
|
|
|
|
# ─── Laravel-App (PHP-FPM + nginx) ──────────────────────────────────────────
|
|
app:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
container_name: network-mgmt-app
|
|
restart: unless-stopped
|
|
volumes:
|
|
- .:/var/www/html # App-Code (für git-pull-Updates)
|
|
- /var/www/html/node_modules # node_modules im Container halten
|
|
ports:
|
|
- "${APP_PORT:-8080}:80"
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
networks:
|
|
- network-mgmt
|
|
|
|
# ─── MariaDB ────────────────────────────────────────────────────────────────
|
|
db:
|
|
image: mariadb:11
|
|
container_name: network-mgmt-db
|
|
restart: unless-stopped
|
|
environment:
|
|
MARIADB_DATABASE: "${DB_DATABASE:-network_mgmt}"
|
|
MARIADB_USER: "${DB_USERNAME:-network_mgmt}"
|
|
MARIADB_PASSWORD: "${DB_PASSWORD:-secret}"
|
|
MARIADB_ROOT_PASSWORD: "${DB_ROOT_PASSWORD:-rootsecret}"
|
|
volumes:
|
|
- db_data:/var/lib/mysql
|
|
healthcheck:
|
|
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 15
|
|
networks:
|
|
- network-mgmt
|
|
|
|
networks:
|
|
network-mgmt:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
db_data:
|