本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
管理在Kubernetes集群中运行的Helm图表。
" --kube-context my-kubernetes-context
空运行命令:
impeller --cluster-config-path=./clusters/my-cluster.yaml --kube-config="$(cat ~/.kube/config)" --kube-context my-kubernetes-context --dry-run
默认情况下,--dry-run选项会隐藏覆盖值。您可以在发布配置中添加showValue: true以启用打印输出:
releases: - name: test-release namespace: kube-system version: ~x.x.x overrides: - target: global.tag showValue: true value: 1.6.0
差异运行命令:
impeller --cluster-config-path=./clusters/my-cluster.yaml --kube-config="$(cat ~/.kube/config)" --kube-context my-kubernetes-context --diff-run
生成审计报告文件:
impeller --cluster-config-path=./clusters --audit=true
或
impeller --cluster-config-path=./clusters --audit=true --audit-file=./myreport.csv
以下Drone流水线示例展示了如何管理单个集群。推送到或合并至master分支时会自动部署更新。
deploy-charts: when: event: push branch: master image: path-to-docker/image:version cluster_config: clusters/my-cluster-name.yaml kube_context: my-kubernetes-context secrets: - source: my-kube-config-drone-secret target: KUBE_CONFIG
此示例演示使用Drone矩阵管理多个集群。推送到或合并至master分支时会自动部署到测试集群。生产集群可通过drone deploy命令手动部署,以便更好地控制哪些版本进入生产环境。
matrix: include: - cluster: my-prod-cluster-1 stage: prod - cluster: my-prod-cluster-2 stage: prod - cluster: my-test-cluster-1 stage: test - cluster: my-test-cluster-2 stage: test pipeline: deploy-charts-prod: when: event: deployment matrix: stage: prod cluster: ${DRONE_DEPLOY_TO} image: path-to-docker/image:version cluster_config: clusters/${cluster}.yaml kube_context: ${cluster} secrets: - source: my-kube-config-drone-secret target: KUBE_CONFIG deploy-charts-test: when: event: push branch: master image: path-to-docker/image:version cluster_config: clusters/${cluster}.yaml kube_context: ${cluster} secrets: - source: my-kube-config-drone-secret target: KUBE_CONFIG
chart-configs/ |- clusters/ |- my-cluster-name.yaml |- my-other-cluster-name.yaml |- values/ |- cluster-autoscaler/ # 集群文件中的发布名称 |- default.yaml # 所有集群的覆盖配置 |- my-cluster-name.yaml # 特定集群的覆盖配置 |- my-other-cluster-name.yaml |- my-chart/ |- default.yaml
clusters/my-cluster-name.yaml:
name: my-cluster-name # 用于查找特定集群的覆盖文件 helm: defaultHistory: 3 # 可选;为所有发布的"helm"部署方法设置--history-max标志 log: 5 # 指定日志级别 debug: false # 启用调试级别日志 repos: # 让Helm知晓您要使用的任何仓库 - name: stable url: [***] - name: private-repo url: [***] releases: - name: cluster-autoscaler # 指定发布名称 chartPath: stable/cluster-autoscaler # 指定图表来源 namespace: kube-system # 指定安装的命名空间 version: 0.7.0 # 指定要安装的图表版本 deploymentMethod: helm # 指定图表的部署方式("helm"或"kubectl") history: 3 # 可选;为此发布的"helm"部署方法设置--history-max标志 - name: my-chart chartPath: private-repo/my-chart namespace: kube-system version: ~1.x # 支持与Helm的--version标志相同的语法 deploymentMethod: kubectl
在上述示例中,deploymentMethod选项允许配置Helm图表的部署方式。有两种可用方法:
helm:使用Helm的常规安装方法(由Tiller pod创建图表中声明的资源)。kubectl:如果不想在集群中运行Tiller pod,可使用此选项运行helm template将图表转换为Kubernetes清单,然后使用kubectl应用该清单。values/my-chart/default.yaml:
# 在此处放置任何覆盖配置,与Helm的用法相同。 # 此文件将作为覆盖配置传递给Helm。 resources: cpu: requests: 100m limits: 200m memory: requests: 1Gi limits: 1Gi
release中添加chartsSource字段,使impeller下载图表tar归档文件chartPath指向提取的图表位置。releases: - name: istio-base namespace: kube-system version: ~x.x.x chartPath: "./downloads/istio-1.6.0/manifests/charts/base" chartsSource: "[***]"
使用Helm的--set功能覆盖单个值。
在集群YAML文件中添加以下发布配置:
- name: release-name namespace: default version: 1.0.0 chartPath: repo/chart-name overrides: - target: tls.key showValue: false valueFrom: environment: KEY
如果将showValue设置为true,环境变量的值将记录到stdout以用于调试。默认情况下,该值会被脱敏。
使用Helm的--set-file功能从文件覆盖单个值。
在集群YAML文件中添加以下发布配置:
- name: release-name namespace: default version: 1.0.0 chartPath: repo/chart-name overrides: - target: tls.key valueFrom: file: /path/to/key
由于值不会被记录,从文件设置值时showValue无效。文件路径始终会记录到stdout。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429