gpt4 book ai didi

docker - Jenkins CD 流水线到 Kubernetes

转载 作者:IT老高 更新时间:2023-10-28 21:43:22 25 4
gpt4 key购买 nike

我打算使用 Jenkins 建立一个 CD 流水线,用于接收我的应用程序,将 docker 镜像发布到我的私有(private) docker 存储库。我想我知道该怎么做。

我不确定 Kubernetes 部分。我想获取该图像并将其部署到我的私有(private) Kubernetes 集群(当前 1 个主节点和 1 个从节点)。

问题:安装了 kubectl 和 docker 的 Jenkins Slave 是否需要成为 Kubernetes 集群的一部分才能触发部署?如何触发该部署?

最佳答案

假设您的集群中有以下部署:

apiVersion: apps/v1beta1 # for versions before 1.6.0 use 
extensions/v1beta1
kind: Deployment
metadata:
name: foobar-deployment
spec:
replicas: 3
template:
metadata:
labels:
app: foobar-app
spec:
containers:
- name: foobar
image: foobar-image:v1
ports:
- containerPort: 80

你必须以某种方式让 Jenkins 告诉你的 Kubernetes 主人以下命令:

kubectl set image deployment/foobar-deployment foobar=foobar-image:version

其中 version 是您刚刚使用 Jenkins 创建的新版本。这将自动触发使用此版本的重新部署。

只要您有权访问拥有集群的 Kubernetes 主服务器(通过 ssh 或类似方式),您就可以通过上述命令。传递此命令时不要忘记跟踪 version

关于docker - Jenkins CD 流水线到 Kubernetes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45136614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com