verdaccio/docs/kubernetes.md

2.1 KiB

id date title
kubernetes 2017-07-10T23:36:56.503Z Kubernetes

You can find instructions to deploy Verdaccio on a Kubernetes cluster on the verdaccio/docker-example repository. However, the recommended method to install Verdaccio on a Kubernetes cluster is to use Helm. Helm is a Kubernetes package manager which bring multiple advantages.

Helm

Setup Helm

If you haven't used Helm before, you need to setup the Helm controller called Tiller:

helm init

Install

Deploy the Helm stable/verdaccio chart. In this example we use npm as release name:

helm install --name npm stable/verdaccio

Deploy a specific version

helm install --name npm --set image.tag=2.6.5 stable/verdaccio

Upgrading Verdaccio

helm upgrade npm stable/verdaccio

Uninstalling

helm del --purge npm

Note: this command delete all the resources, including packages that you may have previously published to the registry.

Custom Verdaccio configuration

You can customize the Verdaccio configuration using a Kubernetes configMap.

Prepare

Copy the existing configuration and adapt it for your use case:

wget https://github.com/verdaccio/verdaccio/blob/master/conf/full.yaml -O config.yaml

Note: Make sure you are using the right path for the storage that is used for persistency:

storage: /verdaccio/storage/data
auth:
  htpasswd:
    file: /verdaccio/storage/htpasswd

Deploy the configMap

Deploy the configMap to the cluster

kubectl create configmap verdaccio-config --from-file ./config.yaml

Deploy Verdaccio

Now you can deploy the Verdaccio Helm chart and specify which configuration to use:

helm install --name npm --set customConfigMap=verdaccio-config stable/verdaccio