mirror of
https://github.com/goharbor/harbor.git
synced 2025-01-03 06:28:06 +01:00
Update Harbor helm chart README.md [Skip CI] (#4479)
* Update Harbor helm chart README.md * More update in harbor chart README.md * require 'Helm CLI 2.8.0+'
This commit is contained in:
parent
a12c213cd1
commit
95791a9fa8
@ -2,57 +2,40 @@
|
|||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
This [Helm](https://github.com/kubernetes/helm) chart installs [Harbor](http://vmware.github.io/harbor/) in a Kubernetes cluster.
|
This [Helm](https://github.com/kubernetes/helm) chart installs [Harbor](http://vmware.github.io/harbor/) in a Kubernetes cluster. Currently this chart supports Harbor v1.4.0 release.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
- Kubernetes cluster 1.8+ with Beta APIs enabled
|
- Kubernetes cluster 1.8+ with Beta APIs enabled
|
||||||
- Kubernetes Ingress Controller is enabled
|
- Kubernetes Ingress Controller is enabled
|
||||||
- kubectl CLI 1.8+
|
- kubectl CLI 1.8+
|
||||||
- PV provisioner support in the underlying infrastructure
|
- Helm CLI 2.8.0+
|
||||||
|
|
||||||
## Setup a Kubernetes cluster
|
## Setup a Kubernetes cluster
|
||||||
|
|
||||||
You can use any tools to setup a K8s cluster.
|
You can use any tools to setup a K8s cluster.
|
||||||
In this guide, we use [minikube](https://github.com/kubernetes/minikube) to setup a K8s cluster as the dev/test env.
|
In this guide, we use [minikube](https://github.com/kubernetes/minikube) to setup a K8s cluster as the dev/test env.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Start minikube
|
# Start minikube
|
||||||
minikube start --vm-driver=none
|
minikube start --vm-driver=none
|
||||||
# Enable Ingress Controller
|
# Enable Ingress Controller
|
||||||
minikube addons enable ingress
|
minikube addons enable ingress
|
||||||
```
|
```
|
||||||
|
|
||||||
## Installing the Chart
|
## Installing the Chart
|
||||||
|
|
||||||
First install [Helm CLI](https://github.com/kubernetes/helm#install), then initialize Helm.
|
First install [Helm CLI](https://github.com/kubernetes/helm#install), then initialize Helm.
|
||||||
```bash
|
```bash
|
||||||
helm init --canary-image
|
helm init
|
||||||
```
|
```
|
||||||
|
|
||||||
Download Harbor helm chart code.
|
Download Harbor helm chart code.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git clone https://github.com/vmware/harbor
|
git clone https://github.com/vmware/harbor
|
||||||
cd harbor/contrib/helm/harbor
|
cd contrib/helm/harbor
|
||||||
```
|
```
|
||||||
|
Download external dependent charts required by Harbor chart.
|
||||||
### Insecure Registry Mode
|
|
||||||
|
|
||||||
If setting Harbor Registry as insecure-registries for docker,
|
|
||||||
you don't need to generate Root CA and SSL certificate for the Harbor ingress controller.
|
|
||||||
|
|
||||||
Install the Harbor helm chart with a release name `my-release`:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
helm install . --debug --name my-release --set externalDomain=harbor.my.domain,insecureRegistry=true
|
helm dependency update
|
||||||
```
|
```
|
||||||
|
|
||||||
**Make sure** `harbor.my.domain` resolves to the K8s Ingress Controller IP on the machines where you run docker or access Harbor UI.
|
|
||||||
You can add `harbor.my.domain` and IP mapping in the DNS server, or in /etc/hosts, or use the FQDN `harbor.<IP>.xip.io`.
|
|
||||||
|
|
||||||
Then add `"insecure-registries": ["harbor.my.domain"]` in the docker daemon config file and restart docker service.
|
|
||||||
|
|
||||||
### Secure Registry Mode
|
### Secure Registry Mode
|
||||||
|
|
||||||
By default this chart will generate a root CA and SSL certificate for your Harbor.
|
By default this chart will generate a root CA and SSL certificate for your Harbor.
|
||||||
@ -62,18 +45,33 @@ open values.yaml, set the value of 'externalDomain' to your Harbor FQDN, and
|
|||||||
set value of 'tlsCrt', 'tlsKey', 'caCrt'. The common name of the certificate must match your Harbor FQDN.
|
set value of 'tlsCrt', 'tlsKey', 'caCrt'. The common name of the certificate must match your Harbor FQDN.
|
||||||
|
|
||||||
Install the Harbor helm chart with a release name `my-release`:
|
Install the Harbor helm chart with a release name `my-release`:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
helm install . --debug --name my-release --set externalDomain=harbor.my.domain
|
helm install . --debug --name my-release --set externalDomain=harbor.my.domain
|
||||||
```
|
```
|
||||||
|
**Make sure** `harbor.my.domain` resolves to the K8s Ingress Controller IP on the machines where you run docker or access Harbor UI.
|
||||||
|
You can add `harbor.my.domain` and IP mapping in the DNS server, or in /etc/hosts, or use the FQDN `harbor.<IP>.xip.io`.
|
||||||
|
|
||||||
Follow the `NOTES` section in the command output to get Harbor admin password and **add Harbor root CA into docker trusted certificates**.
|
Follow the `NOTES` section in the command output to get Harbor admin password and **add Harbor root CA into docker trusted certificates**.
|
||||||
|
|
||||||
The command deploys Harbor on the Kubernetes cluster in the default configuration.
|
The command deploys Harbor on the Kubernetes cluster in the default configuration.
|
||||||
The [configuration](#configuration) section lists the parameters that can be configured during installation.
|
The [configuration](#configuration) section lists the parameters that can be configured in values.yaml or via '--set' params during installation.
|
||||||
|
|
||||||
> **Tip**: List all releases using `helm list`
|
> **Tip**: List all releases using `helm list`
|
||||||
|
|
||||||
|
### Insecure Registry Mode
|
||||||
|
|
||||||
|
If setting Harbor Registry as insecure-registries for docker,
|
||||||
|
you don't need to generate Root CA and SSL certificate for the Harbor ingress controller.
|
||||||
|
|
||||||
|
Install the Harbor helm chart with a release name `my-release`:
|
||||||
|
```bash
|
||||||
|
helm install . --debug --name my-release --set externalDomain=harbor.my.domain,insecureRegistry=true
|
||||||
|
```
|
||||||
|
**Make sure** `harbor.my.domain` resolves to the K8s Ingress Controller IP on the machines where you run docker or access Harbor UI.
|
||||||
|
You can add `harbor.my.domain` and IP mapping in the DNS server, or in /etc/hosts, or use the FQDN `harbor.<IP>.xip.io`.
|
||||||
|
|
||||||
|
Then add `"insecure-registries": ["harbor.my.domain"]` in the docker daemon config file and restart docker service.
|
||||||
|
|
||||||
## Uninstalling the Chart
|
## Uninstalling the Chart
|
||||||
|
|
||||||
To uninstall/delete the `my-release` deployment:
|
To uninstall/delete the `my-release` deployment:
|
||||||
|
Loading…
Reference in New Issue
Block a user