Skip to main content

Kubernetes

Вы можете найти инструкции для развёртывания Verdaccio на кластере Kubernetes в репозитории verdaccio/docker-example. Однако, рекомендуемым методом установки Verdaccio на кластер Kubernetes является использование Helm. Helm это пакетный менеджер Kubernetes который даёт некоторые приемущества.

Helm

Установка Helm

Если ранее вы не пользовались Helm, то вам потребуется настроить Helm контроллер называемый Tiller:

helm init

Установка

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

Разверните Helm stable/verdaccio.

Установка конкретной версии

helm install --name npm stable/verdaccio

Примечание: эта команда удалит все ресурсы, включая пакеты, которые ранее были вами опубликованы в реестре.

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

Deploy a specific version

helm upgrade npm stable/verdaccio

Обновление Verdaccio

helm del --purge npm

Удаление

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

Вы можете настроить конфигурацию Verdaccio используя Kubernetes configMap.

Пользовательская конфигурация Verdaccio

Скопируйте имеющуюся конфигурацию и адаптируйте её для себя:

Подготовка

Примечание: Убедитесь, что вы используете правильный путь для постоянного хранилища:

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

Для применения configMap к нашему кластеру

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

Применение configMap

Сейчас вы можете развернуть Verdaccio Helm пакет и указать, с какой конфигурацией его нужно развернуть: use:

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

Разворачивание Verdaccio

Rancher это платформа для управления конечными контейнерами, которая делает управление им и их использование в production реально простым.

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
....
...

Поддержка Rancher

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