一、创建命名空间
首先创建一个命名空间,命名为jenkins:
apiVersion: v1
kind: Namespace
metadata:
name: jenkins
二、创建服务
创建一个服务:
apiVersion: v1
kind: Service
metadata:
name: jenkins
namespace: jenkins
spec:
type: NodePort
ports:
- port: 8080
targetPort: 8080
nodePort: 30001
selector:
jenkins-app: jenkins
说明:
- 使用
NodePort
在宿主机中暴露端口 - 将容器中的
8080
端口映射到宿主机中的30001
端口 - 选择
jenkins-app: jenkins
标签对应的部署
三、创建部署
这里,我们使用Deployment部署
apiVersion: apps/v1
kind: Deployment
metadata:
name: jenkins
namespace: jenkins
labels:
jenkins-app: jenkins
spec:
replicas: 1
selector:
matchLabels:
jenkins-app: jenkins
template:
metadata:
labels:
jenkins-app: jenkins
spec:
containers:
- name: jenkins
image: jenkinsci/blueocean
ports:
- containerPort: 8080
- containerPort: 50000
volumeMounts:
- mountPath: /var/jenkins_home
name: jenkins-home
volumes:
- name: jenkins-home
hostPath:
path: /run/desktop/mnt/host/d/Users/quanzaiyu/.docker/datas/jenkins
type: Directory
说明:
replicas: 1
指定为1个副本- 镜像选择
jenkinsci/blueocean
- 暴露容器中的
8080
和50000
端口 - 打个标签
jenkins-app: jenkins
- 将卷
/var/jenkins_home
命名为jenkins-home
- 将
jenkins-home
挂载到宿主机D:\Users\quanzaiyu\.docker\datas\jenkins
目录下 type: Directory
表示目录必须先存在,若不存在则会报错
打开Kubernetes Dashboard,可以看到Jenkins已经成功启动:
四、访问Jenkins
在浏览器输入 http://localhost:30001/ 即可访问Jenkins:
Enjoy!