持续集成与持续部署(四)02-Jenkins——Jenkins安装方式之常规安装、使用Docker安装Jenkins、配置Jenkins插件加速、Jenkins与gitlab进行联接

持续集成与持续部署(四)02-Jenkins——Jenkins安装方式之常规安装、使用Docker安装Jenkins、配置Jenkins插件加速、Jenkins与gitlab进行联接

安装方式

  1. 环境要求
    • 机器要求:
      • 256 MB 内存,建议大于 512 MB
      • 10 GB 的硬盘空间(用于 Jenkins 和 Docker 镜像)
    • 需要安装以下软件:
      • Java 8 ( JRE 或者 JDK 都可以)
      • Docker (导航到网站顶部的Get Docker链接以访问适合您平台的Docker下载)
  2. 常规安装
    • 安装JDK

      官方地址

      下载对应的操作系统的JDK,然后解压进行安装。以Linux为例:

      下载最新版本,上传到Linux服务器

      # 上传到 /opt/jdk8目录下
      
      # tar解压JDK安装包
      mkdir -p /opt/jdk8
      tar zxvf jdk-8u211-linux-x64.tar.gz -C /opt/jdk8 --strip-components 1
      
      # vi /etc/profile
      export JAVA_HOME=/opt/jdk8
      export JRE_HOME=${JAVA_HOME}/jre
      export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
      export PATH=${JAVA_HOME}/bin:$PATH
      
    • 安装Jenkins

      下载Jenkins最新的war包:Latest

      mkdir -p /opt/jenkins && cd /opt/jenkins
      
      wget -O /opt/jenkins/jenkins.war http://mirrors.jenkins.io/war-stable/latest/jenkins.war
      
      java -jar jenkins.war --httpPort=8080
      

      就嗯可以打开,http://localhost:8080了

      注意一段这样的话:

      *************************************************************
      *************************************************************
      *************************************************************
      
      Jenkins initial setup is required. An admin user has been created and a password generated.
      Please use the following password to proceed to installation:
      
      63196690ae7d47c49506480ee0e1af4a
      
      This may also be found at: /root/.jenkins/secrets/initialAdminPassword
      
      *************************************************************
      *************************************************************
      *************************************************************
      

      这里的63196690ae7d47c49506480ee0e1af4a就是初始的安装的管理员密码。

  3. 使用Docker安装
    • 安装Docker

      # From https://get.docker.com:
      curl -fsSL https://get.docker.com -o get-docker.sh
      sh get-docker.sh
      
      #From https://test.docker.com:
      curl -fsSL https://test.docker.com -o test-docker.sh
      sh test-docker.sh
      
      # From the source repo (This will install latest from the test channel):
      sh install.sh
      
    • 配置Docker镜像加速,使用阿里云容器加速服务

      左侧的加速器帮助页面就会显示为你独立分配的加速地址

      例如:
      公网Mirror:[系统分配前缀].mirror.aliyuncs.com
      

      使用配置文件 /etc/docker/daemon.json(没有时新建该文件)

      {
          "registry-mirrors": [""]
      }
      

      重启Docker Daemon就可以了

      systemctl daemon-reload
      systemctl restart docker
      

      docker ps 查看容器运行状态

      docker logs 容器ID/容器名称 查看管理员初始密码

    • 安装Docker-compose.yml文件(可选)

      安装方法:

      #下载
      sudo curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
      #安装
      chmod +x /usr/local/bin/docker-compose
      #查看版本
      docker-compose --version
      
    • 安装Jenkins

      版本选择:

      Jenkins: https://hub.docker.com/r/jenkins/jenkins/

      Jenkins with Blue Ocean: https://hub.docker.com/r/jenkinsci/blueocean

      Blue Ocean 重新思考Jenkins的用户体验,从头开始设计Jenkins Pipeline, 但仍然与自由式作业兼容,Blue Ocean减少了混乱而且进一步明确了团队中每个成员 Blue Ocean 的主要特性包括:

      • 持续交付(CD)Pipeline的 复杂可视化 ,可以让您快速直观地理解管道状态。
      • Pipeline 编辑器 - 引导用户通过直观的、可视化的过程来创建Pipeline,从而使Pipeline的创建变得平易近人。
      • 个性化 以适应团队中每个成员不同角色的需求。
      • 在需要干预和/或出现问题时 精确定位 。 Blue Ocean 展示 Pipeline中需要关注的地方, 简化异常处理,提高生产力
      • 本地集成分支和合并请求, 在与GitHub 和 Bitbucket中的其他人协作编码时实现最大程度的开发人员生产力。****

      安装命令:

      # Jenkins
      docker run \
        -itd \
        -u root \
        -p 8080:8080 \
        -v jenkins-data:/var/jenkins_home \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /usr/bin/docker:/usr/bin/docker \
        --name jenkins-master \
        jenkins/jenkins
        
      # Jenkins blueocean
      docker run \
        -itd \
        -u root \
        -p 8080:8080 \
        -v jenkins-data:/var/jenkins_home \ 
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v /usr/bin/docker:/usr/bin/docker \
        --name jenkins-master \
        jenkinsci/blueocean
      
  4. 配置Jenkins插件加速

    进入jenkins系统管理->插件管理中->高级选项卡->升级站点,使用清华源:

    https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/current/update-center.json
    

持续集成与持续部署(四)02-Jenkins——Jenkins安装方式之常规安装、使用Docker安装Jenkins、配置Jenkins插件加速、Jenkins与gitlab进行联接_第1张图片

持续集成与持续部署(四)02-Jenkins——Jenkins安装方式之常规安装、使用Docker安装Jenkins、配置Jenkins插件加速、Jenkins与gitlab进行联接_第2张图片

关于官方所有的镜像列表:

http://mirrors.jenkins-ci.org/status.html

  1. 环境配置

    • Jenkins 的URL路径
    • 全局工具的配置:Docker, JDK(JAVA)…
  2. 用户权限配置

    • 矩阵权限的配置
    • 添加管理员用户所有的权限
    • 添加Authorize Project插件,并且在系统管理中进行配置。配置逻辑,就给用户当前项目的矩阵权限!
  3. 与gitlab进行联接

    • 设置一个SSH Key,方便Jenkins去拉取Gitlab中的项目
    • GItlab项目中去配置SSH Key的Deploy权限。Settings -> Repository -> Deploy keys -> Public Deploy Keys
    • Jenkins添加SSH的私钥

    这样就完成了Jenkins可以访问gitlab的联接的过程。

你可能感兴趣的:(架构和运维,jenkins,docker,ci)