Move the docker-30 service definitions (gitea, kanidm, vault, zot, nginx, lab-proxy, maru-hleda-byt, fuj-management) into vms-home/ to match the naming convention used for other hosts, and add the new garage object-storage and frisbee-drills services alongside it. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
42 lines
1.3 KiB
YAML
42 lines
1.3 KiB
YAML
services:
|
|
garage:
|
|
image: dxflrs/garage:v2.3.0
|
|
container_name: garage
|
|
restart: unless-stopped
|
|
networks: [garage]
|
|
ports:
|
|
- "3900:3900" # S3 API (LAN-reachable for your other services)
|
|
- "3902:3902" # S3 web
|
|
# - "3901:3901" # RPC — only publish once you go multi-node
|
|
volumes:
|
|
- /srv/docker/garage/garage.toml:/etc/garage.toml:ro
|
|
- /srv/docker/garage/meta:/var/lib/garage/meta
|
|
- /srv/docker/garage/data:/var/lib/garage/data
|
|
- /srv/docker/garage/snapshots:/var/lib/garage/snapshots
|
|
healthcheck:
|
|
test: ["CMD", "/garage", "status"] # image is distroless; use the binary, not curl
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 20s
|
|
|
|
garage-webui:
|
|
image: khairul169/garage-webui:1.1.0
|
|
container_name: garage-webui
|
|
restart: unless-stopped
|
|
networks: [garage]
|
|
depends_on:
|
|
garage:
|
|
condition: service_healthy
|
|
ports:
|
|
# - "127.0.0.1:3909:3909" # bind localhost only — reverse-proxy in front for TLS/auth
|
|
- "3909:3909"
|
|
volumes:
|
|
- /srv/docker/garage/garage.toml:/etc/garage.toml:ro
|
|
environment:
|
|
API_BASE_URL: "http://garage:3903" # override self-pointing default
|
|
S3_ENDPOINT_URL: "http://garage:3900"
|
|
|
|
networks:
|
|
garage:
|
|
driver: bridge |