2026-01-14 03:20:59 +00:00
|
|
|
# OCI Registry Service\n\nComprehensive OCI (Open Container Initiative) registry deployment and management for the provisioning system.\nSupports multiple registry implementations: **Zot** (lightweight), **Harbor** (full-featured),\nand **Distribution** (OCI reference implementation).\n\n## Table of Contents\n\n- [Overview](#overview)\n- [Registry Types](#registry-types)\n- [Quick Start](#quick-start)\n- [Installation](#installation)\n- [Configuration](#configuration)\n- [Management](#management)\n- [Namespaces](#namespaces)\n- [Access Control](#access-control)\n- [Monitoring](#monitoring)\n- [Troubleshooting](#troubleshooting)\n- [Advanced Usage](#advanced-usage)\n\n## Overview\n\nThe OCI registry service provides artifact storage and distribution for:\n\n- **Extension Packages**: Providers, taskservs, clusters\n- **KCL Schemas**: Configuration schemas and modules\n- **Platform Images**: Orchestrator, control-center, services\n- **Test Artifacts**: Development and testing images\n\n### Features\n\n- **Multi-Registry Support**: Zot, Harbor, Distribution\n- **Namespace Organization**: Logical separation of artifacts\n- **Access Control**: RBAC, policies, authentication\n- **Monitoring**: Prometheus metrics, health checks\n- **Garbage Collection**: Automatic cleanup of unused artifacts\n- **High Availability**: Optional HA configurations\n- **TLS/SSL**: Secure communication\n- **UI Interface**: Web-based management (Zot, Harbor)\n\n## Registry Types\n\n### Zot (Recommended for Development)\n\n**Lightweight, fast, OCI-native registry with search and UI.**\n\n**Pros:**\n\n- Fast startup and low resource usage\n- Built-in UI and search\n- Prometheus metrics\n- Automatic garbage collection\n- Good for development and small deployments\n\n**Cons:**\n\n- Less mature than Distribution\n- Fewer enterprise features than Harbor\n\n**Use Cases:**\n\n- Development environments\n- CI/CD pipelines\n- Small to medium deployments\n- Quick prototyping\n\n### Harbor (Recommended for Production)\n\n**Full-featured enterprise registry with replication, scanning, and RBAC.**\n\n**Pros:**\n\n- Enterprise-grade features\n- Vulnerability scanning (Trivy)\n- Replication and mirroring\n- Advanced RBAC\n- Webhooks and notifications\n- Mature and battle-tested\n\n**Cons:**\n\n- Higher resource requirements\n- More complex setup\n- Heavier than Zot/Distribution\n\n**Use Cases:**\n\n- Production deployments\n- Multi-tenant environments\n- Security-critical applications\n- Large-scale deployments\n\n### Distribution (OCI Reference)\n\n**Official OCI registry reference implementation.**\n\n**Pros:**\n\n- OCI standard compliance\n- Lightweight and simple\n- Well-documented\n- Industry standard\n\n**Cons:**\n\n- No built-in UI\n- No search functionality\n- Manual garbage collection\n- Basic feature set\n\n**Use Cases:**\n\n- OCI standard compliance required\n- Minimal registry needs\n- Custom integrations\n- Educational purposes\n\n## Quick Start\n\n### Start Zot Registry (Default)\n\n```\n# Start Zot in background\ncd provisioning/platform/oci-registry/zot\ndocker-compose up -d\n\n# Initialize with namespaces and policies\nnu ../scripts/init-registry.nu --registry-type zot\n\n# Check health\nnu -c "use provisioning/core/nulib/lib_provisioning/oci_registry; oci-registry health"\n\n# Access UI\nopen http://localhost:5000\n```\n\n### Start Harbor Registry\n\n```\n# Start Harbor\ncd provisioning/platform/oci-registry/harbor\ndocker-compose up -d\n\n# Wait for services to be ready (takes ~2 minutes)\nsleep 120\n\n# Initialize\nnu ../scripts/init-registry.nu --registry-type harbor --admin-password Harbor12345\n\n# Access UI\nopen http://localhost\n# Login: admin / Harbor12345\n```\n\n### Start Distribution Registry\n\n```\n# Start Distribution with UI\ncd provisioning/platform/oci-registry/distribution\ndocker-compose up -d\n\n# Initialize\nnu ../scripts/init-registry.nu --registry-type distribution\n\n# Access UI (if included)\nopen http://localhost:8080\n```\n\n## Installation\n\n### Prerequisites\n\n- **Docker** (20.10+)\n- **Docker Compose** (2.0+)\n- **Nu
|