2018-01-08 14:45:03 -05:00
|
|
|
|
---
|
|
|
|
|
id: kubernetes
|
2018-02-16 13:32:53 -05:00
|
|
|
|
title: "Kubernetes"
|
2018-01-08 14:45:03 -05:00
|
|
|
|
---
|
2018-07-17 03:41:31 -05:00
|
|
|
|
您可以在[verdaccio/docker-例子](https://github.com/verdaccio/docker-examples/tree/master/kubernetes-example)资源库找到在Kubernetes群集中配置Verdaccio的指南。 然而,建议在Kubernetes集群上安装Verdaccio的方法是使用[Helm](https://helm.sh)。 Helm 是 [Kubernetes](https://kubernetes.io) 包管理者,它带来很多优点。
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
## Helm
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
### 设置Helm
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
如果您以前没有使用过Helm,您需要设置叫做Tiller的Helm控制器:
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
helm init
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
### 安装
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
配置Helm [stable/verdaccio](https://github.com/kubernetes/charts/tree/master/stable/verdaccio) chart。在这个例子里,我们用 `npm` 作为发行名称:
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
helm install --name npm stable/verdaccio
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
### 配置特定版本
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
helm install --name npm --set image.tag=2.6.5 stable/verdaccio
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
### 升级Verdaccio
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
helm upgrade npm stable/verdaccio
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
### 卸载
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
helm del --purge npm
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
**请注意:** 此命令删除所有源代码,包含您之前可能已经发布到registry里的包。
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
### 自定义Verdaccio 配置
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
您可以用Kubernetes *configMap*自定义 Verdaccio 配置。
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
#### 准备
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
复制 [现有配置](https://github.com/verdaccio/verdaccio/blob/master/conf/full.yaml)并将其调整为您所需要的:
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
2018-06-07 10:19:13 -05:00
|
|
|
|
wget https://raw.githubusercontent.com/verdaccio/verdaccio/master/conf/full.yaml -O config.yaml
|
2018-01-08 14:45:03 -05:00
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
**请注意:** 请确保您使用的是持续存储的正确路径:
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```yaml
|
2018-07-17 03:41:31 -05:00
|
|
|
|
torage: /verdaccio/storage/data
|
2018-01-08 14:45:03 -05:00
|
|
|
|
auth:
|
|
|
|
|
htpasswd:
|
|
|
|
|
file: /verdaccio/storage/htpasswd
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
#### 配置configMap
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
配置`configMap`到集群
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
kubectl create configmap verdaccio-config --from-file ./config.yaml
|
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
#### 配置Verdaccio
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
现在您可以配置Verdaccio Helm chart 并指定使用哪个配置:
|
2018-01-08 14:45:03 -05:00
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
helm install --name npm --set customConfigMap=verdaccio-config stable/verdaccio
|
2018-01-21 05:29:14 -05:00
|
|
|
|
```
|
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
## Rancher 支持
|
2018-01-21 05:29:14 -05:00
|
|
|
|
|
2018-07-17 03:41:31 -05:00
|
|
|
|
[Rancher](http://rancher.com/) 是一个完整的容器管理平台,它使得在生产中管理和使用容器非常容易。
|
2018-01-21 05:29:14 -05:00
|
|
|
|
|
|
|
|
|
* [verdaccio-rancher](https://github.com/lgaticaq/verdaccio-rancher)
|