jenkins安装:

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins

配置jdk路径:

vi /etc/init.d/jenkins

jenkins配置多个git仓库引用_系统管理


如果jdk路径配置没有配置正确,会出现该错误:

failed to start LSB:jenkins automation server

修改jenkins端口【可选】:

jenkins默认端口为8080,如果已经被占用,在这里修改。

vi /etc/sysconfig/jenkins

jenkins配置多个git仓库引用_apache_02

jenkins的启动与停止:

sudo service jenkins start 启动
 
sudo service jenkins stop 停止
 
sudo service jenkins restart 重启

jenins的初始化:

在启动后,访问 IP:端口(如127.0.0.1:8080),出现

jenkins配置多个git仓库引用_apache_03


获取密码:

cat /var/lib/jenkins/secrets/initialAdminPassword

 

jenkins配置多个git仓库引用_jenkins配置多个git仓库引用_04

 

安装插件,选择推荐的配置:

jenkins配置多个git仓库引用_jenkins配置多个git仓库引用_05

网络原因,可能会下载失败,没有关系,后面还可以安装。

 

创建用户:

jenkins配置多个git仓库引用_maven_06

 

Jenkins的配置:

jenkins的两个问题:
主页面空白:

经过以上配置,应该就能看到jenkins的欢迎界面,但也可能是一片空白,但不管怎样都推荐配置一下:

系统管理-->插件管理-->高级
或者访问http://ip:端口号/pluginManager/advanced

jenkins配置多个git仓库引用_apache_07

将https更改为http,如果之前主界面是空白,那么现在应该恢复正常了。

频繁出现403:

系统管理-->全局安全配置-->跨站请求伪造保护,取消选中

jenkins配置多个git仓库引用_maven_08

 

Github或者码云(Gitee)实现自动部署:

配置服务器与Jenkins环境:

安装git:

yum install git

安装maven:

maven下载:https://archive.apache.org/dist/maven/

maven3.5 以上的版本因为目录结构改变、导致jenkins无法识别,而低版本不会自动集成依赖,这里推荐使用3.3.9版本。

下载:

wget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz

解压:

tar -xvzf apache-maven-3.3.9-bin.tar.gz

移动到/user/local/maven:

mkdir /usr/local/maven
mv apache-maven-3.3.9 /usr/local/maven

配置jenkins环境:

jenkins配置多个git仓库引用_apache_09

jenkins配置多个git仓库引用_jenkins配置多个git仓库引用_10

 

通过Github集成:

配置Github Server:

系统管理-->系统设置-->Github

jenkins配置多个git仓库引用_apache_11

如果github的项目是公开项目,则可以不添加凭据。

配置Github Webhooks:

选择要发布的项目仓库,Settings-->Webhooks,其中的Payload URL 就是上一步中的覆盖 Hook URL

jenkins配置多个git仓库引用_jenkins配置多个git仓库引用_12

jenkins配置多个git仓库引用_系统管理_13

新建Job:

进行之前,在插件管理中检查是否已经安装下列插件。

Maven Integration plugin   ,Git plugin  , GitHub API Plugin

jenkins配置多个git仓库引用_jenkins配置多个git仓库引用_14

jenkins配置多个git仓库引用_maven_15

 

配置Shell:

jenkins配置多个git仓库引用_系统管理_16

#!/bin/sh

if test -s /var/run/MyThread.pid; then
        echo "读取成功"
        PID=$(cat /var/run/MyThread.pid)
        ps -fe|grep $PID |grep -v grep
          if [ $? -ne 0 ]
          then
          echo "进程不存在"
          else
          echo "进程已销毁"
          kill -9 $PID
          fi        
else
        echo "文件为空"
fi

 这里是一个临时的写法,不推荐这么写,

BUILD_ID=dontKillMe
sh /usr/local/shell/1.sh

 1.sh中的代码,其中的项目名和路径要根据自己项目情况改变。

nohup java -jar /var/lib/jenkins/.m2/repository/com/example/demo/0.0.1-SNAPSHOT/demo-0.0.1-SNAPSHOT.jar &
echo $! > /var/run/MyThread.pid

被发布项目中,要加入maven插件:

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.1.9.RELEASE</version>
            </plugin>
        </plugins>
    </build>

通过码云(Gitee)集成:

Jenkins下载插件:

Gitee Plugin  ,  Git plugin

新建Job:

jenkins配置多个git仓库引用_系统管理_17

jenkins配置多个git仓库引用_apache_18

jenkins配置多个git仓库引用_maven_19

shell的部分参见上文中的 配置shell

配置WebHooks

项目-->管理-->WebHook-->添加 ,URL中,填入上图中的链接

jenkins配置多个git仓库引用_系统管理_20

 

遇到的问题:WebHook返回值403
系统配置-->全局安全配置-->访问控制,选中

jenkins配置多个git仓库引用_系统管理_21