K8S中Jenkins该怎么安装
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,今天就跟大家聊聊有关K8S中Jenkins该怎么安装,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、Jenkins安装准备条件#在运维主机操
千家信息网最后更新 2026年11月03日K8S中Jenkins该怎么安装
今天就跟大家聊聊有关K8S中Jenkins该怎么安装,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
一、Jenkins安装准备条件
#在运维主机操作:1.准备镜像~]# docker pull jenkins/jenkins:2.190.3~]# docker images | grep jenkins~]# docker tag 22b8b9a84dbe test-harbor.cedarhd.com/public/jenkins:v2.190.3~]# docker push test-harbor.cedarhd.com/public/jenkins:v2.190.32.自定义Dockerfile#官网拉取的镜像需要做些自定义操作,才能在k8s集群中部署(运维主机上运行)mkdir -p /data/dockerfile/jenkinscd /data/dockerfile/jenkinsvim DockerfileFROM test-harbor.cedarhd.com/public/jenkins:v2.190.3USER rootRUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime &&\ echo 'Asia/Shanghai' >/etc/timezoneADD id_rsa /root/.ssh/id_rsaADD config.json /root/.docker/config.jsonADD get-docker.sh /get-docker.shRUN echo "StrictHostKeyChecking no" >> /etc/ssh/ssh_config &&\ /get-docker.sh#解释:> - 设置容器用户为root> - 设置容器内的时区> - 将ssh私钥加入(使用git拉代码时要用到,配对的公钥应配置在gitlab中)> - 加入了登录自建harbor仓库的config文件> - 修改了ssh客户端的> - 安装一个docker的客户端> - 如果因为网络原因构建失败,可以在最后" /get-docker.sh --mirror Aliyun"3.生成ssh密钥对jenkins]# ssh-keygen -t rsa -b 2048 -C "xxxxxxx@qq.com" -N "" -f /root/.ssh/id_rsaGenerating public/private rsa key pair.Your identification has been saved in /root/.ssh/id_rsa.Your public key has been saved in /root/.ssh/id_rsa.pub.The key fingerprint is:SHA256:bIajghsF/BqJouTeNvZXvQWvolAKWvhVSuZ3uVWoVXU 897307140@qq.comThe key's randomart image is:+---[RSA 2048]----+| ...E||. o .||.. o . o . ||..+ + oo +.. ||o=.+ +ooS+..o ||=o* o.++..o. o ||++...o .. + ||.o.= .. . o ||..o.o.... . |+----[SHA256]-----+enkins]# cp /root/.ssh/id_rsa .4.准备其它文件jenkins]# cp /root/.docker/config.json .jenkins]# curl -fsSL get.docker.com -o get-docker.shjenkins]# chmod +x get-docker.sh jenkins]# lltotal 28-rw------- 1 root root 160 Jan 28 23:41 config.json-rw-r--r-- 1 root root 355 Jan 28 23:38 Dockerfile-rwxr-xr-x 1 root root 13216 Jan 28 23:42 get-docker.sh-rw------- 1 root root 1675 Jan 28 23:38 id_rsa5、登陆harbor创建infra私有仓库创建infra的project,access level 为Private6、生成jenkins镜像jenkins]# docker build -t harbor.phc-dow.com/infra/jenkins:v2.190.3 .jenkins]# docker push test-harbor.cedarhd.com/infra/jenkins:v2.190.37、准备共享存储yum install nfs-utils -y~]# vim /etc/exports/data/nfs-volume 10.4.7.0/24(rw,no_root_squash)###启动NFS服务~]# mkdir -p /data/nfs-volume~]# systemctl start nfs~]# systemctl enable nfs
二、Jenkins安装所需资源配置清单
mkdir /data/k8s-yaml/jenkins && mkdir -p /data/nfs-volume/jenkins_home && cd /data/k8s-yaml/jenkins~]# vi dp.yaml #用于创建配置pod控制器与pod资源kind: DeploymentapiVersion: extensions/v1beta1metadata: name: jenkins namespace: infra labels: name: jenkinsspec: replicas: 1 selector: matchLabels: name: jenkins template: metadata: labels: app: jenkins name: jenkins spec: volumes: - name: data nfs: server: test-operator.cedarhd.com path: /data/nfs-volume/jenkins_home - name: docker hostPath: path: /run/docker.sock type: '' containers: - name: jenkins image: test-harbor.cedarhd.com/infra/jenkins:v2.190.3 imagePullPolicy: IfNotPresent ports: - containerPort: 8080 protocol: TCP env: - name: JAVA_OPTS value: -Xmx512m -Xms512m volumeMounts: - name: data mountPath: /var/jenkins_home - name: docker mountPath: /run/docker.sock imagePullSecrets: - name: harbor securityContext: runAsUser: 0 strategy: type: RollingUpdate rollingUpdate: maxUnavailable: 1 maxSurge: 1 revisionHistoryLimit: 7 progressDeadlineSeconds: 600-----------------------------------------------------------------------------------------------~]# vim service.yaml #用于创建cluster ip与端口映射kind: ServiceapiVersion: v1metadata: name: jenkins namespace: infraspec: ports: - protocol: TCP port: 80 targetPort: 8080 selector: app: jenkinsjenkins]# cat ingress.yaml #用于创建ingress转发规则kind: IngressapiVersion: extensions/v1beta1metadata: name: jenkins namespace: infraspec: rules: - host: test-jenkins.cedarhd.com http: paths: - path: / backend: serviceName: jenkins servicePort: 80-----------------------------------------------------------------------------------------------
三、在其中一个运算节点上创建资源
kubectl apply -f http://k8s-yaml.cedarhd.com/jenkins/dp.yaml kubectl apply -f http://k8s-yaml.cedarhd.com/jenkins/service.yaml kubectl apply -f http://k8s-yaml.cedarhd.com/jenkins/ingress.yaml
看完上述内容,你们对K8S中Jenkins该怎么安装有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
准备
内容
资源
镜像
配置
主机
仓库
客户
容器
文件
生成
代码
公钥
原因
客户端
密钥
控制器
时区
更多
条件
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
广州万易互联网科技有限公司
互联网为科技
互联网络科技有限公司
金融科技与互联网金融
有马互联网科技
紫鲸互联网科技
大白互联网科技
青岛中康互联网医疗科技有限公司
深圳国际航运科技和互联网
南山科技园互联网公司有哪些
宜昌元轩互联网科技有限公司
华夏恒生互联网科技013171
南博望互联网科技有限公司
黑科技 体验场景 互联网大会
小米互联网科技园入驻
互联网科技融合创新
35岁以上互联网科技行业
吉林省码上互联网科技电话
网互联网络科技
利用互联网等科技手段
新华互联网科技学校
互联网科技与金融科技
上游互联网科技
互联网科技有限公司 翻译
科技互联网的核心竞争力
山东子淼互联网科技有限公司
北京市互联网新科技
浙南科技城互联网大厦招聘
北京天晋互联网科技有限公司
北京军民互联网科技公司