阅读 183

Jenkins 之 安装部署

一、基于linux操作系统安装jenkins(不作重点介绍)

1、下载Jenkins安装包
wget http://mirrors.jenkins.io/war/latest/jenkins.war
Jenkins  之  安装部署

2、安装tomcat与jdk(此步省略)
3、把jenkins.war放到TOMCAT下的webapps
Jenkins  之  安装部署

4、启动tomcat,加载jenkins下的war包
备注:初始密码/root/.jenkins/secrets/initialAdminPasswod

二、基于k8s安装jenkins

1、对应的yaml安装文件

apiVersion: v1kind: Namespacemetadata:
  name: jenkins          #创建jenkins表空间---apiVersion: v1kind: ServiceAccountmetadata:
  name: jenkins             #创建一个jenkins serviceaccount ,并赋予cluster-admin权限
  namespace: jenkins
---apiVersion: rbac.authorization.k8s.io/v1beta1kind: ClusterRoleBindingmetadata:
  name: jenkins-crbroleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: cluster-adminsubjects:- kind: ServiceAccount
  name: jenkins
  namespace: jenkins
---apiVersion: apps/v1kind: Deploymentmetadata:
  name: jenkins-master           #用deployment管理jenkins容器
  namespace: jenkinsspec:
  replicas: 1
  selector:
    matchLabels:
      devops: jenkins-master
  template:
    metadata:
      labels:
        devops: jenkins-master
    spec:
      nodeSelector:
        jenkins: "true"          #固定在某台主机上运行
      serviceAccount: jenkins #Pod 需要使用的服务账号
      initContainers:            #初始化容器加载本地文件夹权限
      - name: fix-permissions
        image: busybox
        command: ["sh", "-c", "chown -R 1000:1000 /var/jenkins_home"]
        securityContext:
          privileged: true
        volumeMounts:
        - name: jenkinshome
          mountPath: /var/jenkins_home
      containers:
      - name: jenkins
        image: jenkinsci/blueocean:1.23.2
        imagePullPolicy: IfNotPresent
        ports:
        - name: http #Jenkins Master Web 服务端口
          containerPort: 8080
        - name: slavelistener #Jenkins Master 供未来 Slave 连接的端口
          containerPort: 50000
        volumeMounts:
        - name: jenkinshome
          mountPath: /var/jenkins_home
        env:
        - name: JAVA_OPTS
          value: "-Xms4096m -Xmx5120m -Duser.timezone=Asia/Shanghai -Dhudson.model.DirectoryBrowserSupport.CSP="
      volumes:
      - name: jenkinshome
        hostPath:
          path: /var/jenkins_home/
---apiVersion: v1kind: Service       #service服务metadata:
  name: jenkins
  namespace: jenkinsspec:
  ports:
  - name: http
    port: 8080
    targetPort: 8080
  - name: slavelistener
    port: 50000
    targetPort: 50000
  type: ClusterIP
  selector:
    devops: jenkins-master
---apiVersion: extensions/v1beta1kind: Ingress               #ingress发布metadata:
  name: jenkins-web
  namespace: jenkinsspec:
  rules:
  - host: jenkins.cedarhd.com
    http:
      paths:
      - backend:
          serviceName: jenkins
          servicePort: 8080
        path: /


文章分类
后端
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐