Kubernetes
Le istruzioni per sviluppare Verdaccio su un cluster Kubernetes si possono trovare nell'archivio verdaccio/docker-example. Tuttavia, il metodo raccomandato per l'installazione di Verdaccio su un cluster Kubernetes è di utilizzare Helm. Helm è un gestore di pacchetti Kubernetes che trae molteplici vantaggi.
Helm
Configurare Helm
Se non si è mai usato Helm prima d'ora, è necessario configurare il controller chiamato Tiller:
helm init
Installazione
⚠️ Se stai usando questo grafico di helm, sei pregato di esser consapevole della migrazione della repository.
Sviluppare il grafico Helm stable/verdaccio.
Sviluppare una versione specifica
helm install --name npm stable/verdaccio
Nota: questo comando cancella tutte le risorse, inclusi i pacchetti che potresti aver pubblicato precedentemente sul registro.
helm install --name npm --set image.tag=2.6.5 stable/verdaccio
Distribuisci una versione specifica
helm upgrade npm stable/verdaccio
Aggiornamento di Verdaccio
helm del --purge npm
Disinstallazione
wget https://raw.githubusercontent.com/verdaccio/verdaccio/master/conf/docker.yaml -O config.yaml
È possibile personalizzare la configurazione di Verdaccio utilizzando un Kubernetes configMap.
Configurazione personalizzata di Verdaccio
Copiare la configurazione esistente e adattarla al proprio caso d'uso:
Preparazione
Nota: Assicurarsi che si stia utilizzando il percorso corretto per l'archiviazione che viene usato per la persistenza:
wget https://raw.githubusercontent.com/verdaccio/verdaccio/master/packages/config/src/conf/docker.yaml -O config.yaml
Sviluppare il configMap
nel cluster
storage: /verdaccio/storage/data
auth:
htpasswd:
file: /verdaccio/storage/htpasswd
Sviluppare il configMap
Ora è possibile sviluppare il grafico Verdaccio Helm e specificare quale configurazione utilizzare:
kubectl create configmap verdaccio-config --from-file ./config.yaml
Sviluppare Verdaccio
Rancher è una piattaforma completa per l'amministrazione di contenitori che rende estremamente semplice gestire ed utilizzare contenitori in produzione.
helm install npm --set existingConfigMap=verdaccio-config verdaccio/verdaccio
Authenticate with private upstreams using Helm
As of version 4.8.0
of the helm chart, a new secretEnvVars
field has been added.
This allows you to inject sensitive values to the container via a Kubernetes Secret.
- Update your Verdaccio config according to the Uplinks documentation
- Pass the secret environment variable to your values file or via
--set secretEnvVars.FOO_TOKEN=superSecretBarToken
# values.yaml
secretEnvVars:
FOO_TOKEN: superSecretBarToken
Limite di dimensione del corpo del proxy NGINX
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
....
...
Supporto Rancher
Rancher is a complete container management platform that makes managing and using containers in production really easy.