This guide walks you through the fundamentals of using Harbor.
This guide walks you through the fundamentals of using the different Harbor features.
*[Role Based Access Control(RBAC)](#rbac)
*[Role Based Access Control(RBAC)](#rbac)
*[Authentication Modes and User Accounts](#auth)
*[Managing Projects](#managing-projects)
*[Managing Members of a Project](#managing-members-of-a-project)
...
...
@@ -30,7 +30,7 @@ This guide walks you through the fundamentals of using Harbor.
*[Using API Explorer](#api-explorer)
<aid="rbac"></a>
## Role Based Access Control(RBAC)
## Role Based Access Control(RBAC)

...
...
@@ -481,22 +481,22 @@ Harbor provides two kinds of labels to isolate kinds of resources(only images fo
***Global Level Label**: Managed by Harbor system administrators and used to manage the images of the whole system. They can be added to images under any projects.
***Project Level Label**: Managed by project administrators under a project and can only be added to the images of the project.
### Managing global level labels
### Managing Global Labels
The Harbor system administrators can list, create, update and delete the global level labels under `Administration->Configuration->Labels`:

### Managing project level labels
### Managing Project-Level Labels
The project administrators and Harbor system administrators can list, create, update and delete the project level labels under `Labels` tab of the project detail page:
Users who have Harbor system administrator, project administrator or project developer role can click the `ADD LABELS` button to add labels to or remove labels from images. The label list contains both globel level labels(come first) and project level labels:

### Filtering images by labels
### Filtering Images by Label
The images can be filtered by labels:

...
...
@@ -886,7 +886,7 @@ Kubernetes users can easily deploy pods with images stored in Harbor. The setti
## Managing Helm Charts
[Helm](https://helm.sh) is a package manager for [Kubernetes](https://kubernetes.io). Helm uses a packaging format called [charts](https://docs.helm.sh/developing_charts). Since version 1.6.0 Harbor is now a composite cloud-native registry which supports both container image management and Helm charts management. Access to Helm charts in Harbor is controlled by [role-based access controls (RBAC)](https://en.wikipedia.org/wiki/Role-based_access_control) and is restricted by projects.
### Manage Helm Charts via portal
### Manage Helm Charts via the Harbor Interface
#### List charts
Click your project to enter the project detail page after successful logging in. The existing helm charts will be listed under the tab `Helm Charts` which is beside the image `Repositories` tab with the following information:
* Name of helm chart
...
...
@@ -898,7 +898,7 @@ Click your project to enter the project detail page after successful logging in.
You can click the icon buttons on the top right to switch views between card view and list view.
#### Upload new chart
#### Upload a New Chart
Click the `UPLOAD` button on the top left to open the chart uploading dialog. Choose the uploading chart from your filesystem. Click the `UPLOAD` button to upload it to the chart repository server.

...
...
@@ -907,7 +907,7 @@ If the chart is signed, you can choose the corresponding provenance file from yo
If the chart is successfully uploaded, it will be displayed in the chart list at once.
#### List chart versions
#### List Chart Versions
Clicking the chart name from the chart list will show all the available versions of that chart with the following information:
* the chart version number
* the maintainers of the chart version
...
...
@@ -923,18 +923,18 @@ Check the checkbox at the 1st column to select the specified chart versions:
* Click the `DOWNLOAD` button to download the chart artifact file. Batch operation is not supported.
* Click the `UPLOAD` button to upload the new chart version for the current chart
#### Adding labels to/remove labels from chart versions
#### Adding Labels to and Removing Labels from Chart Versions
Users who have Harbor system administrator, project administrator or project developer role can click the `ADD LABELS` button to add labels to or remove labels from chart versions.

#### Filtering chart versions by labels
#### Filtering Chart Versions by Label
The chart versions can be filtered by labels:

#### View chart version details
#### View Chart Version Details
Clicking the chart version number link will open the chart version details view. You can see more details about the specified chart version here. There are three content sections:
***Summary:**
* readme of the chart
...
...
@@ -951,7 +951,7 @@ Clicking the chart version number link will open the chart version details view.
Clicking the `DOWNLOAD` button on the top right will start the downloading process.
### Working with Helm CLI
### Working with the Helm CLI
As a helm chart repository, Harbor can work smoothly with Helm CLI. About how to install Helm CLI, please refer [install helm](https://docs.helm.sh/using_helm/#installing-helm). Run command `helm version` to make sure the version of Helm CLI is v2.9.1+.
#### Push Charts to the Repository Server with the CLI
As an alternative, you can also upload charts via the CLI. It is not supported by the native helm CLI. A plugin from the community should be installed before pushing. Run `helm plugin install` to install the `push` plugin first.
**NOTES:**`push` command does not support pushing a prov file of a signed chart yet.
#### Install charts
#### Install Charts
Before installing, make sure your helm is correctly initialized with command `helm init` and the chart index is synchronized with command `helm repo update`.
Search the chart with the keyword if you're not sure where it is: