services: museum: image: ghcr.io/ente-io/server ports: - 8080:8080 # API depends_on: postgres: condition: service_healthy volumes: - ./museum.yaml:/museum.yaml:ro - ./data:/data:ro healthcheck: test: ["CMD", "curl", "--fail", "http://localhost:8080/ping"] interval: 60s timeout: 5s retries: 3 start_period: 5s # Resolve "localhost:3200" in the museum container to the minio container. socat: image: alpine/socat network_mode: service:museum depends_on: [museum] command: "TCP-LISTEN:3200,fork,reuseaddr TCP:minio:3200" web: image: ghcr.io/ente-io/web # Uncomment what you need to tweak. ports: # - 3000:3000 # Photos web app # - 3001:3001 # Accounts # - 3002:3002 # Public albums - 3003:3003 # Auth # - 3004:3004 # Cast # Modify these values to your custom subdomains, if using any environment: ENTE_API_ORIGIN: https://enteauth01.internal.domain.se:8080 #ENTE_ALBUMS_ORIGIN: https://enteauth01.internal.domain.se:3002 ENTE_AUTH_ORIGIN: https://enteauth01.internal.domain.se:3003 postgres: image: postgres:15 environment: POSTGRES_USER: [pguser] POSTGRES_PASSWORD: [pgpassword] POSTGRES_DB: [ente_db] healthcheck: test: pg_isready -q -d ente_db -U [pguser] start_period: 40s start_interval: 1s volumes: - postgres-data:/var/lib/postgresql/data minio: image: minio/minio ports: - 3200:3200 # MinIO API # Uncomment to enable MinIO Web UI # - 3201:3201 environment: MINIO_ROOT_USER: [minio-user] MINIO_ROOT_PASSWORD: [minio-password] command: server /data --address ":3200" --console-address ":3201" volumes: - minio-data:/data post_start: - command: | sh -c ' #!/bin/sh while ! mc alias set h0 http://minio:3200 [minio-user] [minio-password] 2>/dev/null do echo "Waiting for minio..." sleep 0.5 done cd /data mc mb -p b2-eu-cen mc mb -p wasabi-eu-central-2-v3 mc mb -p scw-eu-fr-v3 ' volumes: postgres-data: minio-data: