services: museum: image: ghcr.io/ente-io/server ports: - 8080 depends_on: postgres: condition: service_healthy volumes: - ../files/museum.yaml:/museum.yaml:ro - museum-data:/data:ro healthcheck: test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:8080/ping"] interval: 60s timeout: 5s retries: 3 start_period: 120s # 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 # Photos web app # - 3001:3001 # Accounts - 3002 # Public albums # - 3003:3003 # Auth # - 3004:3004 # Cast # - 3005:3005 # Share # - 3006:3006 # Embed # Modify these values to your custom subdomains, if using any environment: ENTE_API_ORIGIN: http://ente.bendtstudio.com ENTE_ALBUMS_ORIGIN: https://albums.bendtstudio.com ENTE_PHOTOS_ORIGIN: http://ente.bendtstudio.com postgres: image: postgres:15 environment: POSTGRES_USER: pguser POSTGRES_PASSWORD: $pg_pass 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 # MinIO API # Uncomment to enable MinIO Web UI # - 3201:3201 environment: MINIO_ROOT_USER: $minio_user MINIO_ROOT_PASSWORD: $minio_pass 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_pass 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: