# See docker-compose.yml header for maksit-certs-ui-* container/image naming. # Postgres + pgAdmin are for local Compose only (Helm uses external PostgreSQL — see certsServerSecrets.certsEngineConfiguration.connectionString). # # WebUI client: @maks-it.com/webui-* from npm; MaksIT.WebUI/Dockerfile runs npm install && npm run dev. networks: maksit-certs-ui-network: driver: bridge services: reverseproxy: environment: ASPNETCORE_ENVIRONMENT: Development ASPNETCORE_HTTP_PORTS: "8080" # Same YARP keys as Helm (Kubernetes uses -server/client). Compose uses service names server / client. ReverseProxy__Clusters__webapiCluster__Destinations__d1__Address: "http://server:5000/" ReverseProxy__Clusters__webuiCluster__Destinations__d1__Address: "http://client:5173/" ports: - "8080:8080" networks: - maksit-certs-ui-network depends_on: - client - server client: environment: VITE_APP_TITLE: MaksIT.CertsUI volumes: - ./MaksIT.WebUI:/app networks: - maksit-certs-ui-network server: environment: ASPNETCORE_ENVIRONMENT: Development ASPNETCORE_HTTP_PORTS: "5000" volumes: - D:/Compose/MaksIT.CertsUI/configMap/appsettings.json:/configMap/appsettings.json:ro - D:/Compose/MaksIT.CertsUI/secrets/appsecrets.json:/secrets/appsecrets.json:ro networks: - maksit-certs-ui-network depends_on: postgres: condition: service_healthy postgres: restart: unless-stopped # Aligns with Helm-style local defaults: user/db/password certsui (set the same in secrets appsecrets.json ConnectionString). environment: POSTGRES_USER: certsui POSTGRES_PASSWORD: certsui POSTGRES_DB: certsui networks: - maksit-certs-ui-network volumes: - D:/Compose/MaksIT.CertsUI/postgresql/data:/var/lib/postgresql/data ports: - "5432:5432" healthcheck: test: ["CMD-SHELL", "pg_isready -U certsui -d certsui"] interval: 2s timeout: 5s retries: 30 start_period: 10s # pgAdmin: mount servers.json (see repo src/postgresql/servers.json.example). Store password for user certsui in pgAdmin or use PassFile. pgadmin: restart: unless-stopped environment: PGADMIN_DEFAULT_EMAIL: admin@example.com PGADMIN_DEFAULT_PASSWORD: adminpass PGADMIN_SERVER_JSON_FILE: /pgadmin4/servers.json PGADMIN_REPLACE_SERVERS_ON_STARTUP: "True" ports: - "8081:80" networks: - maksit-certs-ui-network depends_on: - postgres volumes: - D:/Compose/MaksIT.CertsUI/postgresql/pgadmin-data:/var/lib/pgadmin - D:/Compose/MaksIT.CertsUI/postgresql/servers.json:/pgadmin4/servers.json:ro