Skip to main content

Private Registry

vCloud Private Registry provides secure, high-performance Docker image storage and distribution for your applications. Host your private container images with enterprise-grade security, access control, and global content delivery.

Overview

The Private Registry service enables you to:

  • Secure Image Storage: Store container images in a private, secure environment
  • Access Control: Manage access with user authentication and namespace isolation
  • High Availability: Enterprise-grade infrastructure with guaranteed uptime
  • Performance: Optimized for fast image pulls and pushes
  • Integration: Seamless integration with Kubernetes and CI/CD pipelines

Getting Started

Prerequisites

Before using the Private Registry, ensure you have:

  • Docker Engine installed (version 20.10.0+)
  • Network connectivity to k8s.io.reg.vnetwork.dev
  • Valid authentication credentials for the registry
  • Docker images built locally with appropriate configuration
Account Credentials

Registry username and password are provided directly to your email upon service activation. Please check your email or contact VNETWORK support if you haven't received your login credentials.

Image Upload Guide

1. Authentication

1.1. Login to Registry

Authenticate with the registry using Docker CLI:

docker login k8s.io.reg.vnetwork.dev

This command creates/updates authentication information in the ~/.docker/config.json file. Verify authentication with:

cat ~/.docker/config.json | grep k8s.io.reg.vnetwork.dev

2. Image Tagging

Tag your local image to match the registry namespace format:

docker tag <local_image>:<version> k8s.io.reg.vnetwork.dev/<namespace>/<repository>:<tag>

Example:

docker tag myapp:1.0.0 k8s.io.reg.vnetwork.dev/myteam/myapp:1.0.0

For multi-architecture images, use:

docker buildx build --platform linux/amd64,linux/arm64 -t k8s.io.reg.vnetwork.dev/<namespace>/<repository>:<tag> .

3. Push Image

Push the tagged image to the registry:

docker push k8s.io.reg.vnetwork.dev/<namespace>/<repository>:<tag>

Monitor the push progress layer by layer. Each layer is pushed separately and verified with SHA256 hash.

For large images, consider using parallel uploads:

docker push --disable-content-trust=false k8s.io.reg.vnetwork.dev/<namespace>/<repository>:<tag>

4. Verification

Verify the image accessibility by pulling it on another machine/server:

docker pull k8s.io.reg.vnetwork.dev/<namespace>/<repository>:<tag>

Inspect image details:

docker inspect k8s.io.reg.vnetwork.dev/<namespace>/<repository>:<tag>

List all tags for a repository programmatically:

curl -X GET https://k8s.io.reg.vnetwork.dev/v2/<namespace>/<repository>/tags/list \
-u username:password

Registry Features

Namespace Management

  • Organization: Organize images by teams, projects, or environments
  • Access Control: Granular permissions per namespace
  • Isolation: Complete separation between different namespaces

Image Management

  • Version Control: Comprehensive image versioning with tags
  • Cleanup Policies: Automated cleanup of old or unused images
  • Storage Optimization: Efficient layer deduplication and compression

Security Features

  • Authentication: Secure user authentication and authorization
  • Encryption: All data encrypted in transit and at rest
  • Vulnerability Scanning: Built-in security scanning for container images
  • Audit Logging: Complete audit trail for all registry operations

Performance

  • Global CDN: Worldwide content distribution for fast pulls
  • Caching: Intelligent caching for frequently accessed images
  • Parallel Processing: Support for concurrent push/pull operations
  • Bandwidth Optimization: Optimized transfer protocols

Integration with Kubernetes

The Private Registry seamlessly integrates with Kubernetes clusters for automated image deployment. See the Kubernetes Integration guide for detailed instructions on:

  • Creating image pull secrets
  • Configuring service accounts
  • Using private images in deployments
  • Troubleshooting common issues

Support and Troubleshooting

Common Issues

  • Authentication failures: Verify credentials and network connectivity
  • Slow transfers: Check network bandwidth and consider parallel uploads
  • Tag conflicts: Use unique tags and proper versioning strategies
  • Access denied: Verify namespace permissions and credentials

Getting Help

  • Documentation: Comprehensive guides and API reference
  • Support Portal: 24/7 technical support through vCloud portal
  • Email Support: Direct email support for urgent issues
  • Community: Access to user community and best practices

For Kubernetes integration and advanced usage, see Kubernetes Integration.