services: mariadb: image: mariadb:11 container_name: annas_mariadb restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD} MYSQL_DATABASE: ${DB_NAME:-annas_rechnungen} MYSQL_USER: ${DB_USER} MYSQL_PASSWORD: ${DB_PASSWORD} volumes: - mariadb_data:/var/lib/mysql networks: - app_network healthcheck: test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] start_period: 10s interval: 5s timeout: 5s retries: 5 app: # registry.henryathome.home64.de/henry/annasrechnungsmanager:latest image: git.henryathome.home64.de/henry/annasrechnungsmanager:latest container_name: annas_app restart: unless-stopped ports: - "3000:3000" environment: DATABASE_URL: mysql://${DB_USER}:${DB_PASSWORD}@mariadb:3306/${DB_NAME:-annas_rechnungen} AUTH_SECRET: ${AUTH_SECRET} NODE_ENV: production # Beim ersten Start wird der Admin-Benutzer (username: admin) mit diesem Passwort angelegt. # Nach dem ersten Login in der App ändern und hier leer lassen oder entfernen. ADMIN_PASSWORD: ${ADMIN_PASSWORD} depends_on: mariadb: condition: service_healthy networks: - app_network volumes: mariadb_data: networks: app_network: driver: bridge