services: postgres: build: context: ../v2_postgres container_name: db restart: always env_file: .env environment: POSTGRES_HOST: postgres POSTGRES_INITDB_ARGS: '--encoding=UTF8 --locale=de_DE.UTF-8' POSTGRES_COLLATE: 'de_DE.UTF-8' POSTGRES_CTYPE: 'de_DE.UTF-8' TZ: Europe/Berlin PGTZ: Europe/Berlin volumes: # Persistente Speicherung der Datenbank auf dem Windows-Host - postgres_data:/var/lib/postgresql/data # Init-Skript für Tabellen - ../v2_adminpanel/init.sql:/docker-entrypoint-initdb.d/init.sql networks: - internal_net deploy: resources: limits: cpus: '2' memory: 4g license-server: build: context: ../v2_lizenzserver container_name: license-server restart: always # Port-Mapping entfernt - nur noch über Nginx erreichbar env_file: .env environment: TZ: Europe/Berlin depends_on: - postgres networks: - internal_net deploy: resources: limits: cpus: '2' memory: 4g admin-panel: build: context: ../v2_adminpanel container_name: admin-panel restart: always # Port-Mapping entfernt - nur über nginx erreichbar env_file: .env environment: TZ: Europe/Berlin depends_on: - postgres networks: - internal_net volumes: # Backup-Verzeichnis - ../backups:/app/backups deploy: resources: limits: cpus: '2' memory: 4g nginx: build: context: ../v2_nginx container_name: nginx-proxy restart: always ports: - "80:80" - "443:443" environment: TZ: Europe/Berlin depends_on: - admin-panel - license-server networks: - internal_net networks: internal_net: driver: bridge volumes: postgres_data: