Harbor

Private cloud-native container registry with vulnerability scanning, content signing, and role-based access control (RBAC).

Version:

2.14.2

back to Marketplace

⚠️ Note: Harbor is a large application with multiple components. Initial startup may take 8–15 minutes.

VM Requisites

Resource Minimum
CPU 2 vCPU
RAM 4 GB
Disk 100 GB
Operating System Ubuntu 22.04 / 24.04

⚠️ A 100 GB disk is the actual requirement for Harbor to store images, the database, and cache. Do not use the standard 40 GB.

Access Port

Port Protocol Usage
443 HTTPS Registry web interface and API

How To Access

With SSL enabled (recommended)

https://<IP-CON-GUIONES>.sslip.io/

Example: if your VM has the IP address 200.25.101.125:

https://200-25-101-125.sslip.io/

Access credentials

Field Value
User admin
Password The one configured in HARBOR_ADMIN_PASSWORD or look for it in the deployment outputs

Use the Registry

Configure Docker client

# With SSL (sslip.io)
docker login https://<IP-CON-GUIONES>.sslip.io -u admin -p <PASSWORD>

Push of an image

# Tag
docker tag <imagen>:<tag> <IP-CON-GUIONES>.sslip.io/<proyecto>/<imagen>:<tag>

# Upload
docker push <IP-CON-GUIONES>.sslip.io/<proyecto>/<imagen>:<tag>

Pull of an image

docker pull <IP-CON-GUIONES>.sslip.io/<proyecto>/<imagen>:<tag>

ℹ️ Harbor organizes images into projects. The default project is library. Create additional projects from the UI under Projects → New Project.

Verify that Harbor is active

Harbor deploys multiple pods. All must be in Running mode before accessing the UI.

# View all Harbor pods
kubectl get pods -A | grep harbor

# View installation log
tail -f /var/log/cuemby/bootstrap.log

Main expected pods:

NAMESPACE  NAME                              READY   STATUS
harbor     harbor-core-xxxxxxxxx             1/1     Running   ✓
harbor     harbor-portal-xxxxxxxxx           1/1     Running   ✓
harbor     harbor-registry-xxxxxxxxx         1/1     Running   ✓
harbor     harbor-jobservice-xxxxxxxxx       1/1     Running   ✓
harbor     harbor-database-0                 1/1     Running   ✓
harbor     harbor-valkey-0                   1/1     Running   ✓

ℹ️ If some pods display "Init" or "Pending", please wait a few minutes. This is part of the normal startup process.

Configuration Parameters

Credentials

Parameter Default Description
HARBOR_ADMIN_PASSWORD ⚠️ auto-generated Admin user password for UI and registry.
HARBOR_DB_PASSWORD ⚠️ auto-generated Internal PostgreSQL database password.
HARBOR_SECRET_KEY ⚠️ auto-generated Encryption key for sensitive internal data.
HARBOR_VALKEY_PASSWORD ⚠️ auto-generated Valkey password (cache and internal queues).

Optionals

Parameter Default Description
HARBOR_REGISTRY_DATA_SIZE 50Gi Volume size for storing images.
HARBOR_DB_DATA_SIZE 20Gi Volume size for PostgreSQL.
HARBOR_SSL_ENABLED true Enable HTTPS with automatic certificate via sslip.io.
HARBOR_HOSTNAME auto (sslip.io) Custom hostname. If left blank, the URL generated by Cuemby will be used.

ℹ️ All credentials are automatically generated if left blank. Find them in the deployment outputs on the Cuemby portal.

First Steps (quick start)

  1. Open the URL and log in with admin and your password.
  2. Create a project from Projects → New Project (public or private).
  3. Log in with Docker and upload your first image to the created project.
  4. Enable vulnerability scanning in Projects → <project> → Configuration → Automatically scan images.

💡 Tip: Harbor includes Trivy for vulnerability scanning. You can configure policies to block the pull of images with critical vulnerabilities from Projects → <project> → Configuration → Prevent vulnerable images from running.

Quick Troubleshooting

Problem Probable cause Solution
UI not loading Pod still starting Wait 8–15 min. Check kubectl get pods -A | grep harbor.
unauthorized in docker push/pull You are not logged in Run docker login with your credentials before operating.
denied: requested access to the resource is denied Project does not exist or lacks permits Create the project in the UI and verify the user's permissions.
Pods in Pending state Insufficient RAM or disk space Verify that the VM has at least 8 GB of RAM and 100 GB of disk space.
Pod in CrashLoopBackOff Dependency not listed Check with kubectl describe pod -n .

Cuemby Cloud

IaaS

About Cuemby Cloud

Cuemby Cloud is enterprise-grade cloud infrastructure managed from a single console, built for stronger security, predictable operations, and easy scaling across regions.

Datacenters regions available in Colombia, Ecuador, and Chile

Backed by Tier III / Tier IV data center locations

Zero Network Ingress and Egress Fees

24/7 local expert support

Ready to Modernize Your Enterprise?

Future challenges demand future-ready solutions.
Let’s get started!

© Copyright | Cuemby® 2025