Registry Stack Guide
The registry stack provides the private Docker registry and Registry Admin UI.
RETIRED (2026-07-01). This stack (docker-registry + registry-admin) has been decommissioned and replaced by the Gitea package registry. See
docs/runtime/stacks/gitea.mdx. The content below is retained for historical reference only.
The registry stack provides the private Docker registry and Registry Admin UI.
Source Of Truth
- Compose:
runtime/stacks/infrastructure/registry/docker-compose.registry.yml - VPS env:
runtime/environments/vps/infrastructure/registry/.env - VPS placeholder:
runtime/environments/vps/infrastructure/registry/registry.env - Dev template:
runtime/environments/dev/infrastructure/registry/registry.dev.env - Launcher:
runtime/scripts/infrastructure/registry.{sh,bat} - Shared auth file:
/var/lib/traefik/registry-auth/registry.htpasswd
Security Model
registry.perspective-v.comis public and protected by Traefik basic auth.registry-admin.perspective-v.comis NetBird-only.- Both use the shared htpasswd file.
Required Variables
REGISTRY_HOSTREGISTRY_ADMIN_HOSTREGISTRY_TITLEREGISTRY_ADMIN_BOOTSTRAP_USERREGISTRY_ADMIN_BOOTSTRAP_PASSWORDREGISTRY_ADMIN_TOKEN_SECRETREGISTRY_RATE_LIMIT_AVERAGEREGISTRY_RATE_LIMIT_BURST
Deploy
Create the shared auth file once:
sudo mkdir -p /var/lib/traefik/registry-auth
sudo touch /var/lib/traefik/registry-auth/registry.htpasswd
sudo chmod 600 /var/lib/traefik/registry-auth/registry.htpasswdBring up Registry Admin first, then the registry service:
./runtime/scripts/infrastructure/registry.sh up registry-admin
./runtime/scripts/infrastructure/registry.sh up registryRaw compose equivalents:
docker compose --env-file runtime/environments/vps/infrastructure/registry/.env -f runtime/stacks/infrastructure/registry/docker-compose.registry.yml up -d registry-admin
docker compose --env-file runtime/environments/vps/infrastructure/registry/.env -f runtime/stacks/infrastructure/registry/docker-compose.registry.yml up -d registryValidate
./runtime/scripts/infrastructure/registry.sh ps
curl -Ik https://registry.perspective-v.com/v2/
curl -Ik https://registry-admin.perspective-v.com
docker login registry.perspective-v.comCleanup And Rehearsal Helpers
runtime/stacks/infrastructure/registry/scripts/registry-cleanup.shruntime/stacks/infrastructure/registry/scripts/staging-rehearsal.sh
Examples:
cd runtime/stacks/infrastructure/registry
./scripts/registry-cleanup.sh run-monthly --policy-file ./cleanup-policy.json
./scripts/staging-rehearsal.sh --registry-url https://registry.perspective-v.com --registry-admin-url https://registry-admin.perspective-v.com --cleanup-policy ./cleanup-policy.json