Skip to main content

Harbor

Overview

Harbor is available as an add-on within Ankra's platform, providing a secure and efficient container image registry for storing, managing, and scanning images. It offers built-in security features such as vulnerability scanning and role-based access control (RBAC), helping you manage and distribute container images across your Kubernetes clusters.


Configuration Options

The Harbor add-on offers configurable inputs that allow you to customize the deployment based on your cluster's needs. Below are the available inputs:

Inputs

  • Namespace
    This input defines the Kubernetes namespace where Harbor will be deployed.

    • Default: harbor

    Example:

    namespace: "harbor"
  • Helm Chart Version
    This input sets the version of the Harbor Helm chart to deploy.

    • Default: 1.15.1
    • Options:
      • 1.15.1 (default)

    Example:

    helm_chart_version: "1.15.1"
  • Ingress Hostname
    This input defines the hostname for the Harbor ingress. When set, it enables the ingress for Harbor.

    • Default: harbor.${CLUSTER_ID_SHORT}.ankra.app

    Example:

    ingress_hostname: "harbor.example.com"
  • Ingress TLS Provider
    This input specifies the TLS provider for securing the Harbor ingress.

    • Default: letsencrypt
    • Options:
      • letsencrypt (default)
      • cloudflare

    Example:

    ingress_tls_provider: "letsencrypt"

Usage

Deploying Harbor

To deploy Harbor in your Kubernetes cluster using Ankra, follow these steps:

  1. Access the Add-ons Section
    In Ankra's platform, navigate to the Add-ons section and select Harbor from the list of available add-ons.

  2. Configure Inputs
    You will be prompted to configure the following inputs:

    • Namespace: Set the Kubernetes namespace for Harbor.
    • Helm Chart Version: Set the version of the Harbor Helm chart.
    • Ingress Hostname: Define the ingress hostname for Harbor.
    • Ingress TLS Provider: Choose the TLS provider (e.g., Let's Encrypt or Cloudflare).

    Example configuration:

    namespace: "harbor"
    helm_chart_version: "1.15.1"
    ingress_hostname: "harbor.example.com"
    ingress_tls_provider: "letsencrypt"
  3. Access
    You can gain access from the URL you have provided during setup. You can get started with the admin account by extracting the admin-credentials secret and decode the secret data.