[k8s]jenkins部署在k8s集群

$ cat jenkins-pvc.yaml 
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: jenkins-pvc
spec:
  storageClassName: "managed-nfs-storage"
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 1Gi


$ cat jenkins-deployment.yaml 
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: jenkins
  labels:
    app-name: jenkins
spec:
  replicas: 1
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 0
  template:
    metadata:
      labels:
        app-name: jenkins
    spec:
      containers:
      - name: jenkins
        image: docker.io/jenkins:latest
        imagePullPolicy: IfNotPresent
        ports:
        - containerPort: 8080
          name: web
          protocol: TCP
        - containerPort: 50000
          name: agent
          protocol: TCP
        volumeMounts:
        - name: jenkins-home
          mountPath: /var/jenkins_home
        env:
        - name: JAVA_OPTS
          value: "-Duser.timezone=Asia/Shanghai -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -XX:MaxRAMFraction=1 -Dhudson.slaves.NodeProvisioner.MARGIN=50 -Dhudson.slaves.NodeProvisioner.MARGIN0=0.85"
      volumes:
      - name: jenkins-home
        persistentVolumeClaim:
          claimName: jenkins-pvc


$ cat jenkins-service.yaml 
kind: Service
apiVersion: v1
metadata:
  labels:
    app-name: jenkins
  name: jenkins
spec:
  ports:
  - port: 8080
    targetPort: 8080
    name: web
  - port: 50000
    targetPort: 50000
    name: agent
  selector:
    app-name: jenkins


$ cat jenkins-ingress.yaml 
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: jenkins
  namespace: default
spec:
  rules:
  - host: k8s-jenkins.maotai.com
    http:
      paths:
      - path: /
        backend:
          serviceName: jenkins
          servicePort: 8080
      

posted @ 2017-12-25 16:29  _毛台  阅读(6202)  评论(0编辑  收藏  举报