安装 Jenkins
将Jenkins部署到default命名空间下。要求完成离线插件的安装,设置Jenkins的登录信息和授权策略。
上传BlueOcean.tar.gz包
[root@k8s-master-node1 ~]#tar -zxvf BlueOcean.tar.gz
[root@k8s-master-node1 ~]#cd BlueOcean/images/
vim /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"insecure-registries": ["0.0.0.0/0"]
"registry-mirrors": ["https://hub.rat.dev"]
}
[root@k8s-master-node1 images]# docker load -i java_8-jre.tar
[root@k8s-master-node1 images]# docker load -i jenkins_jenkins_latest.tar
[root@k8s-master-node1 images]# docker load -i gitlab_gitlab-ce_latest.tar
[root@k8s-master-node1 images]# docker load -i maven_latest.tar
[root@k8s]# docker tag maven:latest 10.32.22.240/library/maven
#harbor仓库默认地址就是ip:80
默认账号admin,Harbor12345
[root@k8s-master-node1 images]# docker login 10.32.22.240
Username: admin
Password: (Harbor12345)
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
[root@k8s-master-node1 images]# docker push 10.32.22.240/library/maven
#安装Jenkins
[root@k8s-master-node1 BlueOcean]# kubectl create ns devops
[root@k8s-master-node1 BlueOcean]# vim jenkins.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: jenkins
name: jenkins
namespace: devops
spec:
replicas: 1
selector:
matchLabels:
app: jenkins
template:
metadata:
labels:
app: jenkins
spec:
nodeName: k8s-master-node1 # 强制调度到master节点
containers:
- image: jenkins/jenkins:latest
name: jenkins
imagePullPolicy: IfNotPresent
ports:
- containerPort: 8080
name: jenkins8080
securityContext:
runAsUser: 0
privileged: true
volumeMounts:
- name: jenkins-home
mountPath: /var/jenkins_home
- name: docker-home
mountPath: /run/docker.sock
- name: docker
mountPath: /usr/bin/docker
- name: kubectl
mountPath: /usr/bin/kubectl
- name: kube
mountPath: /root/.kube
volumes