我们所有人都知道helm
图表令人惊叹,让我们的生活更轻松。
但是,当我想使用helm
图表时,我有一个用例 - 没有互联网访问
有两个步骤:
values.yaml
文件中加注)我该怎么做?
答案 0 :(得分:0)
我知道问题的第一部分的答案。
您实际上可以从github git clone https://github.com/kubernetes/charts.git
所有正式图表,并在您要安装的文件系统上指定图表(文件夹)的路径。
这将采用helmfile
执行如下命令:
helmfile -f deployment.yaml sync
cat deployment.yaml
...
repositories:
- name: roboll
url: http://roboll.io/charts
context: example.int.com # kube-context (--kube-context)
releases:
# Prometheus deployment
- name: my_prometheus # name of this release
namespace: monitoring # target namespace
chart: /opt/heml/charts/stable/prometheus # the chart being installed to create this release, referenced by `repository/chart` syntax
values: ["values/values_prometheus_ns_monitoring.yaml"]
set: # values (--set)
- name: rbac.create
value: true
# Grafana deployment
- name: my_grafana # name of this release
namespace: monitoring # target namespace
chart: /opt/heml/charts/stable/grafana
values: ["values/values_grafana_ns_monitoring.yaml"]
因此,您可以看到我已指定了一些自定义values_<software>_ns_monitoring.yaml
文件。
我原来问题的第二部分仍然是未答复。
我希望能够告诉docker
在本节中使用本地泊坞窗图片
cat values_grafana_ns_monitoring.yaml
replicas: 1
image:
repository: grafana/grafana
tag: 5.0.4
pullPolicy: IfNotPresent
我设法手动复制/粘贴 - 然后加载docker image 所以它在我的电脑中可见 - 但我无法弄清楚如何说服 docker + helmfile 以使用我的图片。目标是完全处理 offlilne 安装。
任何想法???
sudo docker images
[sudo] password for jantoth:
REPOSITORY TAG IMAGE ID CREATED SIZE
my_made_up_string/custom_grafana/custom_grafana 5.1.2 917f46a60761 6 days ago 238 MB
答案 1 :(得分:0)
脱机使用舵图需要从互联网上提取该图然后进行安装。
$ helm pull <chart name>
$ ls #The chart will be pulled as a tar to the local directory
$ helm install <whatever release name you want> <chart name>.tgz
要使此方法正常工作,您将需要图表中提到的所有本地使用的docker镜像。
答案 2 :(得分:0)
无需互联网访问即可从Dockerhub中提取Docker映像
显然,这是不可能的。但是,可以通过将其分为多个阶段来解决该问题:
或者,您可以查看离线打包/部署工具,例如Gravity