Move infrastructure tooling to dedicated repository, separate from codebase. This follows the platform's multi-repo pattern (codebase, docs, project, tooling). Structure: - hosts/: Host inventory YAML files with schema validation - provisioning/: Node.js reconciliation with verification/rollback - reconciliation/: Bash reconciliation with verification/rollback - docker/: Container configurations - nginx/: Web server configs - scripts/: Deployment and maintenance scripts - service-registry/: Service discovery dashboard - systemd/: Service unit files Verification system implements "first step = last step" pattern: - State hashing for quick comparison - Pre-reconciliation snapshots for rollback - Transaction semantics with file locking 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
50 lines
1.3 KiB
YAML
50 lines
1.3 KiB
YAML
version: '3.8'
|
|
|
|
# Local Docker Registry for CI/CD builds
|
|
# Eliminates network latency by running registry on same host as GitLab runner
|
|
# Security: Full control over image storage and distribution
|
|
|
|
services:
|
|
registry:
|
|
image: registry:2
|
|
container_name: local-registry
|
|
restart: unless-stopped
|
|
ports:
|
|
- "5000:5000"
|
|
volumes:
|
|
# Persistent storage for images
|
|
- registry-data:/var/lib/registry
|
|
# Optional: Registry configuration
|
|
- ./registry-config.yml:/etc/docker/registry/config.yml:ro
|
|
environment:
|
|
# Enable deletion of images (for cleanup)
|
|
REGISTRY_STORAGE_DELETE_ENABLED: "true"
|
|
networks:
|
|
- registry-network
|
|
|
|
# Optional: Registry UI for browsing images
|
|
registry-ui:
|
|
image: joxit/docker-registry-ui:latest
|
|
container_name: registry-ui
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8080:80"
|
|
environment:
|
|
- REGISTRY_TITLE=Local CI Registry
|
|
- REGISTRY_URL=http://registry:5000
|
|
- DELETE_IMAGES=true
|
|
- SHOW_CONTENT_DIGEST=true
|
|
- NGINX_PROXY_PASS_URL=http://registry:5000
|
|
- SINGLE_REGISTRY=true
|
|
depends_on:
|
|
- registry
|
|
networks:
|
|
- registry-network
|
|
|
|
volumes:
|
|
registry-data:
|
|
driver: local
|
|
|
|
networks:
|
|
registry-network:
|
|
driver: bridge
|