美文网首页插件大师待处理
jenkins安装部署指南

jenkins安装部署指南

作者: 我的宠物 | 来源:发表于2019-01-04 14:26 被阅读97次
    jenkins

    一、环境准备

    1、docker镜像 h1kkan/jenkins-docker:lts。(我没有选择官方的jenkins镜像,是想拥有更大的镜像定制性)
    2、本机和jenkins部署机的os均为ubuntu16.04。部署机ip为192.168.11.21。

    二、安装方法:

    1、安装docker
    sudo apt-get install docker.io
    
    2、安装python,pip,ansible,fabric
    # ubuntu一般都默认安装有python
    sudo apt-get install ansible python-pip
    sudo pip install fabric
    
    3、编写dockerfile
    FROM h1kkan/jenkins-docker:lts
    MAINTAINER xxx@xxx.com.cn
    ENV DEBIAN_FRONTEND noninteractive
    
    USER root
    
    #更换shell为bash
    RUN rm /bin/sh && ln -s /bin/bash /bin/sh
    
    RUN apt-get update
    RUN apt-get install -y vim telnet procps locate net-tools iputils-ping wget xz-utils zip expect
    
    RUN pip install fabric
    
    COPY ./jenkins-entrypoint.sh /sh/
    ENTRYPOINT ["/sh/jenkins-entrypoint.sh"]
    
    
    4、编写jenkins-entrypoint.sh
    #!/usr/bin/env bash
    
    /sbin/tini -- /usr/local/bin/jenkins.sh
    
    #无限循环
    while :; do sleep 2073600; done
    
    5、编写ansilbe-playbook配置文件
    
    - name: "/www/{{item}}"
      file:
        path: "/www/{{item}}"
        owner: user11
        group: user11group
        mode: 0777
        state: directory
      with_items:
        - jenkins
      tags:
        - jenkins
    
    - name: "/www/jenkins/{{item}}"
      file:
        path: "/www/jenkins/{{item}}"
        owner: user11
        group: user11group
        mode: 0777
        state: directory
      with_items:
        - jenkins_home
        - backup
      tags:
        - jenkins
    
    
    - name: copy jenkins.dockerfile
      copy: src="jenkins.dockerfile" dest="/www/docker/images" owner=user11 group=user11group mode=775
      tags:
        - jenkins
    
    - name: copy jenkins.entrypoint.sh
      copy: src="jenkins-entrypoint.sh" dest="/www/docker/images" owner=user11 group=user11group mode=775
      tags:
        - jenkins
    
    
    #    old-image: h1kkan/jenkins-docker:lts
    - name: jenkins
      docker_container:
        image: user11-jenkins
        hostname: jenkins
        name: jenkins
        user: root
        ports:
          - 8888:8080
        etc_hosts:
          git.xxx.lo: 192.168.11.22
        volumes:
          - /www:/www
          - /www/jenkins/jenkins_home:/var/jenkins_home
        networks:
          - name: dockercompose_default
        state: started
        restart: yes
        restart_policy: always
        privileged: true
        env:
          JENKINS_JAVA_OPTIONS: "-Dorg.apache.commons.jelly.tags.fmt.timeZone=Asia/Shanghai"
      tags:
        - jenkins2
    
    6、开始安装

    I. 在本机执行

    ansible-playbook ~/xxx/ansible/jenkins.yaml -e env_server="xxx-server" --tags="jenkins"
    

    II. 在jenkins部署机上执行

    docker build -t user11-jenkins -f jenkins.dockerfile .
    

    III 在本机执行

    ansible-playbook ~/xxx/ansible/jenkins.yaml -e env_server="xxx-server" --tags="jenkins2"
    

    此时打开浏览器访问http://192.168.11.21:8888即可看到jenkins界面


    jenkins界面
    7、开启用户注册

    打开系统管理 -> 全局安全配置,勾选允许用户注册

    允许用户注册
    然后用户在登录界面,就可以自助注册了
    自助注册
    自助注册
    8、用户权限管理

    Jenkins刚开始的界面是允许访客进行所有操作的,这时Jenkins是有安全隐患的,也不容易去管理。这时,我们需要管理Jenkins的权限,对它的权限进行设置。

    • 1.管理角色
      点击manage roles
      设置全局角色(全局角色可以对jenkins系统进行设置与项目的操作)
      admin:对整个jenkins都可以进行操作
      ops:可以对所有的job进行管理
      other:只有读的权限


      设置全局角色
    • 2.分配角色
      系统管理页面进入Manage and Assign Roles,点击assign roles


      分配角色
    9、备份和恢复

    jenkins这里我通过thinbackup插件进行对jenkins的配置备份与恢复。
    找到系统管理->插件管理,选择thinbackup插件安装


    备份

    系统管理选择thinbackup


    备份
    备份

    设置备份,周一到周五的凌晨1点进行完整备份

    10、设置时区

    jenkins安装好后默认时区是格林威治时区,可以按下面方法修改

    • 系统管理→ 系统配置中时区设置为Asia/Shanghai
    • 系统管理→ 脚本命令行中执行
    System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')
    
    11、美化UI,安装BlueOcean

    找到系统管理->插件管理,选择BlueOcean插件安装后,主界面会多增加打开BlueOcean一项,

    BlueOcean

    BlueOcean实际运行时界面如下:


    BlueOcean

    至此jenkins部署完成!

    相关文章

      网友评论

        本文标题:jenkins安装部署指南

        本文链接:https://www.haomeiwen.com/subject/qmnhrqtx.html