Skip to main content

Kubernetes

Puedes encontrar las instrucciones para desplegar Verdaccio en un cluster de Kubernetes en el repositorio verdaccio/docker-example. Sin embargo, el método recomendado de instalar Verdaccio en un cluster de Kubernetes es usando Helm. Helm is a Kubernetes es un administrador de paquetes que trae muchos beneficios y ventajas.

Helm

Configurar Helm

Si no has usado Helm anteriormente, necesitarás configurar el controlador de Helm llamado Tiller:

helm init

Instalación

⚠️ If you are using this helm chart, please be aware of the migration of the repository.

Desplegar Helm stable/verdaccio chart.

Desplegar una versión específica

helm install --name npm stable/verdaccio

Nota: el comando borra todos los recursos, incluyendo los paquetes que tu podrías haber publicado anteriormente al registro.

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

Deploy a specific version

helm upgrade npm stable/verdaccio

Actualizando Verdaccio

helm del --purge npm

Desinstalar

wget https://raw.githubusercontent.com/verdaccio/verdaccio/master/conf/docker.yaml -O config.yaml

Puedes personalizar la configuracion de verdaccio usando un * configMap* de Kubernetes.

Configuración personalizada de Verdaccio

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

Preparando

Nota: Asegúrese que usa la dirección correcta para el almacenamiento que es usado por la persistencia:

wget https://raw.githubusercontent.com/verdaccio/verdaccio/master/packages/config/src/conf/docker.yaml -O config.yaml

Desplegar el configMap en el cluster

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

Desplegar el configMap

Ahora puedes desplegar Verdaccio Helm chart y especificar cual configuración usar:

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

Desplegar Verdaccio

Rancher es una completa plataforma para la administración de contenedores en producción muy fácil de usar.

helm install npm --set existingConfigMap=verdaccio-config verdaccio/verdaccio

NGINX proxy body-size limit

The standard k8s NGINX ingress proxy allows for 1MB for body-size which can be increased by modifying the default deployment options according to the documentation:

...

annotations:
...

kubernetes.io/proxy-body-size: 20m
....
...

Soporte Rancher

Rancher is a complete container management platform that makes managing and using containers in production really easy.