We can't find the internet
Attempting to reconnect
在 Kubernetes 中安装 jenkins
简介
在 kubernetes 中安装 Jenkins Jenkins 会以 master 方式运行,当有 build 任务时,会 在 kubernetes 中启动一个 pod 来运行对应的构建任务需要配置对应的 pod 来解决常规的 构建问题
安装 Jeknis 到 Kubernetes:
使用仓库 https://github.com/gsmlg/jenkins 中的配置
- 配置 Deployment 使用 deployment.yaml
kubectl create -f deployment.yaml
- 配置 service.yaml 使用 service.yaml
kubectl create -f service.yaml
- 手动添加 ingress 配置使用
rancher
配置 ingress 服务
对 jenkins 进行配置
-
在 configure global security 中可以配置用户,用于登陆管理
-
配置连接 kubernetes 的权限
- 在 configure system 中,配置
添加 cloud 配置
-
配置
kubernetes URL
为API server
的地址 -
在
Credentials
配置上配置kubeconfig
-
添加
Jenkins tunnel
地址,地址为service
配置中的jenkins-jnlp
的地址 -
配置
Kubenetes Pod Template
,labels
配置用于slave
启动时添加的配置 -
配置
contaienr
参照需求配置记录下配置的 Labels
删除 command to run, Arguments to pass to the command 配置
dind 配置需要添加 volume 映射 docker.sock
contaienr镜像当前需要自己配置,目前已经做了两个镜像 - gsmlg/jenkins-slave-jnlp-dind - gsmlg/jenkins-slave-jnlp-nodejs
配置项目
添加project
的时候
-
通过
Label Expression
来确定使用哪一个Pod template
来启动slave
-
Source Code Management
配置 git 项目地址 -
branches to build
指定那些分支会进行构建 -
Build Triggers
中指定自动出发 build 的触发器 -
Build Environment
指定 Build 终端输出颜色 -
Build
指定 build 命令,可以分阶段执行 -
Post build
build 完成后的动作
Comment
- jnlp - Java Network Launch Protocol Link