0
点赞
收藏
分享

微信扫一扫

jenkins安装步骤


1.安装jenkins

  1.1.Java环境

     因为Jenkins是使用Java语言编写的.所以这里需要使用到Java环境.

查看当前系统Java版本的指令: java -version
        如果显示Java的版本号.说明已经有了Java环境.如果没有显示则需要安装Java,
        指令如下:
        sudo yum install java

  2.Jenkins安装

    2.1.使用命令安装:

     如果想要安装最新版本的Jenkins,可以使用以下方式去安装.(友情提示:最新版本Jenkins要求JDK版本至少: JDK1.8)

1.添加Jenkins源(截止目前Jenkins最新版本为2.177): 
        sudo wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo
        sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
        
        2.使用yum命令安装Jenkins:
        yum install jenkins

    2.2.使用命令安装:

     如果想要安装历史版本的Jenkins.则需要去Jenkins网站下载自己想要的版本.下载地址如下: Jenkins下载地址

     服务器环境:**CentOS环境(download选项选择: Red Hat/Fedora/CentOS).

     Jenkins历史版本:
jenkins-2.164.1-1.1


     对应的Jenkins文件:jenkins-2.164.1-1.1.noarch.rpm

1.添加Jenkins源: 
        sudo wget -O /etc/yum.repos.d/jenkins.repo http://jenkins-ci.org/redhat/jenkins.repo
        sudo rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
        
        2. 使用rpm命令安装Jenkins:
        sudo rpm -ih jenkins-2.164.1-1.1.noarch.rpm

2.Jenkins相关配置

  2.1 Jenkins安装目录

/var/lib/jenkins/

  2.2 Jenkins配置文件

Jenkins配置文件地址: /etc/sysconfig/jenkins
      
      这里面有3个我们比较关心的配置:
        1.JENKINS_HOME: Jenkins的主目录.在Jenkins下配置的任务都会放在该目录下.
        
        2.JENKINS_USER: Jenkins的用户.
        
        3.JENKINS_PORT: Jenkins的端口.默认配置为8080.可根据自己的实际情况更改为想要的端口.我这里设置的是38080

3.Jenkins关闭与重启

  3.1 第一次访问Jenkins

由于我Jenkins配置文件中将JENKINS_PORT设置为38080.所以这里访问Jenkins的地址以 http://localhost:38080为例.
      
      第一次访问Jenkins时有一个临时密码需要输入.这个临时密码的存放地址会写在你登录时的浏览器页面上.根据提示找到相关文件中的临时密码.即可完成第一次登录.然后就配置admin账号了.

  3.2 使用命令启动与关闭Jenkins

1.启动Jenkins命令: sudo service jenkins start
        结果显示: RestartingStarting jenkins (via systemctl):                          [  OK  ]
      
      2.关闭Jenkins命令: sudo service jenkins stop
        结果显示: Stopping jenkins (via systemctl):                          [  OK  ]
      
      重启Jenkins命令: sudo service jenkins restart
        结果显示: Restarting jenkins (via systemctl):                        [  OK  ]

  3.3 浏览器上启动/关闭/重启/重载Jenkins

以Jenkins界面地址为 http://localhost:38080/为例:
        
        1.启动Jenkins服务: http://localhost:38080/start
        
        2.关闭jinkins服务: http://localhost:38080/exit
        
        3.重启jenkins服务: http://localhost:38080/restart
        
        4.挂载Jenkins服务(重新加载配置信息): http://localhost:38080/reload

4.Jenkins设置为中文

  4.1 安装Locale plugin插件

依次点击:  Manage Jenkins(系统管理)  --->  Manage Plugins(插件管理)  --->  Available(可用插件) ---> 搜索Locale plugin ---> 重启Jenkins

  4.2 系统设置中设置语言为 zh_CN

依次点击:  Manage Jenkins(系统管理)  --->  Configure System(系统设置)  --->  找到Locale 并在 Default Language栏中填写zh_CN  --->  勾选下方 Ignore browser preference and force this language to all users ---> 应用并保存

5.安装插件

  5.1 如何安装插件

依次点击:  Manage Jenkins(系统管理)  --->  Manage Plugins(插件管理)  --->  Available(可用插件) ---> 搜索想要安装的插件 ---> 重启Jenkins

  5.2 插件推荐

1.支持使用Github、GitLab、Gerrit等系统管理代码仓库: Git
        2.通过SSH连接其他Linux机器,远程传输文件及执行Shell命令 : Publish Over SSH
        3.基于矩阵的授权策略,支持全局和项目级别的配置: Matrix Authorization Strategy Plugin
        4.Maven/nodejs等必要插件

6.Jenkins的证书管理

  6.1 证书的含义

证书可以理解为Jenkins存放在一个位置的钥匙.以coding(码市)为例.我要去coding上拉取代码.这个证书就是提取代码的钥匙.

  6.2 如何配置证书

依次点击:  Credentials(凭据)  ---> Stores scoped to Jenkins下的Jenkins --->  Global credentials (unrestricted)(全局凭据) --->  dd Credentials(添加凭据)  ---> 根据需要去选择想要的类型和范围

7.Jenkins使用过程中踩过的坑

  7.1 Jenkins没有权限删除/var/lib/下的目录文件

1.问题描述: 在任务构建过程中.想要在Execute shell 中删除/var/lib/jenkins/xxx/下的某个文件.使用rm -f xxx 给出报错.没有权限    
    2.解决方法: 修改jenkins的执行用户.
    3.具体细节: 
        3.1 修改Jenkins的执行用户: 
            执行命令: vi /etc/sysconfig/jenkins
        3.2 修改Jenkins配置文件中的JENKINS_USER,并改为权限更大用户.这里改为root: 
            修改 JENKINS_USER="jenkins"   ===> JENKINS_USER="root".
        3.3 修改目录相应权限:
            sudo chown -R root /var/log/jenkins

            sudo chgrp -R root /var/log/jenkins

            sudo chown -R root /var/lib/jenkins 

            sudo chgrp -R root /var/lib/jenkins

            sudo chown -R root /var/cache/jenkins

            sudo chgrp -R root /var/cache/jenkins

  7.2 Jenkins执行shell脚本,提示“未找到命令”

1.问题描述: 在Jenkins中执行shell脚本,提示“未找到命令,但是执行如 ls 等原生命令没有任何问题.而且在linux服务器中执行却是正常的.
    2.可能的原因: 在Linux主机是通过修改 /etc/profile文件来配置环境变量,则问题可能是Jenkins在执行shell脚本时没有加载 /etc/profile 文件,因此找不到 ng命令,会提示“命令未找到”.而且Jenkins默认情况下执行shell脚本是使用非登录方式,然而登录方式不会加载 /etc/profile 文件, 在 Execute shell 中 添加如 #!/bin/sh -l 命令修改为登录方式即可解决问题. 
    3.解决方法: 在Execute shell中添加 #!/bin/sh -l 即可.

  7.3 后续更新,敬请期待!!!

8.Jenkins可用环境变量的使用方法

  8.1 变量的使用方法

1、shell  $变量名 

          2、cmd  %变量名%

          3、项目填写框 ${变量名}

  8.2 Jenkins可用的环境变量

BRANCH_NAME: 对于多分支项目,这将被设置为正在构建的分支的名称,例如,如果您希望从master部署到生产环境而不是从feature分支部署;如果对应某种更改请求,则该名称通常是任意的(请参阅下面的CHANGE_ID和CHANGE_TARGET);
        
        CHANGE_ID:对于与某种更改请求相对应的多分支项目,这将被设置为更改ID,例如拉取请求编号(如果支持);其他未设置;
        
        CHANGE_URL: 对于与某种更改请求相对应的多分支项目,这将被设置为更改URL(如果支持);其他未设置;
        
        CHANGE_TITLE: 对于与某种更改请求相对应的多分支项目,这将被设置为更改的标题(如果支持);其他未设置;
        
        CHANGE_AUTHOR: 对于与某种更改请求相对应的多分支项目,这将被设置为建议更改的作者的用户名(如果支持);其他未设置;
        
        CHANGE_AUTHOR_DISPLAY_NAME: 对于与某种更改请求相对应的多分支项目,这将被设置为建议更改的作者的人名(如果支持);其他未设置;
        
        CHANGE_AUTHOR_EMAIL: 对于与某种更改请求相对应的多分支项目,这将被设置为建议更改的作者的Email地址(如果支持);其他未设置;
        
        CHANGE_TARGET: 对于与某种更改请求相对应的多分支项目,这将被设置为合并到的目标或者基础分支(如果支持);其他未设置;
        
        BUILD_NUMBER: 当前构建的编号,例如“4674”等
        
        BUILD_ID: 当前构建的版本ID,与构建的BUILD_NUMBER相同
        
        BUILD_DISPLAY_NAME: 当前版本的显示名称,默认为“# 4674”,即BUILD_NUMBER。
        
        JOB_NAME: 即此版本的项目名称,例如“foo”或“foo / bar”。
        
        JOB_BASE_NAME: 此构建的项目的短名称剥离文件夹路径,例如“bar / foo”的“foo”。
        
        BUILD_TAG: “jenkins - $ {JOB_NAME} - $ {BUILD_NUMBER}”的字符串。 JOB_NAME中的所有正斜杠(/)都用破折号( - )替换。方便地放入资源文件,jar文件等,以便于识别。
        
        EXECUTOR_NUMBER: 唯一编号,用于标识执行此构建的当前执行程序(在同一台计算机的执行程序中)。这是您在“构建执行程序状态”中看到的数字,但数字从0开始,而不是从1开始。
        
        NODE_NAME: 如果构建在代理上,则代理的名称;如果在主版本上运行,则为“MASTER”;
        
        NODE_LABELS: 节点分配的空白分隔的标签列表。
        
        WORKSPACE: 作为工作空间分配给构建的目录的绝对路径。
        
        JENKINS_HOME: Jenkins用于存储数据的主节点上分配的目录的绝对路径。
        
        JENKINS_URL: Jenkins的完整URL,如http:// server:port / jenkins /(注意:仅在系统配置中设置Jenkins URL时可用)
        
        BUILD_URL: 此版本的完整URL,例如http:// server:port / jenkins / job / foo / 15 /(必须设置Jenkins URL)
        
        JOB_URL: 该作业的完整URL,例如http:// server:port / jenkins / job / foo /(必须设置Jenkins URL)
        
        GIT_COMMIT: 正在被检出的提交的哈希值.
        
        GIT_PREVIOUS_COMMIT: 最后在此分支上构建的提交的哈希值(如果有.
        
        GIT_PREVIOUS_SUCCESSFUL_COMMIT: 最后在此分支上成功构建的提交的哈希值(如果有).
        
        GIT_BRANCH: 远程分支名称,如果有的话。
        
        GIT_LOCAL_BRANCH: 本地分支名称,如果有的话。
        
        GIT_URL: 远程git仓库的URL。如果有多个,将会是GIT_URL_1,GIT_URL_2等。
        
        GIT_COMMITTER_NAME: 配置的Git提交者名称(如果有的话)。
        
        GIT_AUTHOR_NAME: 配置的Git作者姓名(如果有的话)。
        
        GIT_COMMITTER_EMAIL: 配置的Git提交者电子邮件(如果有的话)。
        
        GIT_AUTHOR_EMAIL: 已配置的Git作者电子邮件(如果有)。
        
        SVN_REVISION: 当前工作区的Subversion版本号,例如“12345”
        
        SVN_URL: 当前工作区的Subversion版本号,例如“12345”


举报

相关推荐

0 条评论