一:准备工作 :
1. 虚拟机搭建好,或者有自己的服务器。
2. 安装 jdk。(1.8 版本)
下载链接:https://www.oracle.com/techne…
[root@localhost src]# tar zxvf jdk-8u171-linux-x64.tar.gz
在 /usr/local/ 下面新建了一个 jdk 文件夹,将解压后的 jdk 放到这个文件夹里面
[root@localhost src]# mv jdk1.8.0_211/ /usr/local/java/
打开环境变量配置文件:
[root@localhost src]# vim /etc/profile
添加如下内容
export JAVA_HOME=/usr/local/jdk/jdk1.8.0_211
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
[root@localhost src]#source /etc/profile,刷新环境变量配置文件使其立刻生效;输入 java -version 查看已安装的 jdk 版本
显示如下,证明安装成功。
[root@localhost src]# java -version
openjdk version “1.8.0_181”
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
3. 安装 git。(2.8.3 版本)
下载:wget https://www.kernel.org/pub/so…
解压:[root@localhost src]# tar -zxvf git-2.8.3.tar.gz
编译安装:
[root@localhost git-2.8.3]# make configure
[root@localhost git-2.8.3]# ./configure –prefix=/usr/local/git –with-iconv=/usr/local/libiconv
[root@localhost git-2.8.3]# make all doc
[root@localhost git-2.8.3]# sudo make install install-doc install-html
配置环境变量:
[root@localhost git-2.8.3]# sudo vim /etc/profile
在文件最后一行添加:export PATH=/usr/local/git/bin:$PATH
保存后运行 source /etc/profile
查看 git 版本
[root@localhost git-2.8.3]# git –version
git version 2.8.3
安装时错误解决方案 :
出现错误一:
usr/bin/perl Makefile.PL PREFIX=’/usr/local/git’ INSTALL_BASE=” –localedir=’/usr/local/git/share/locale’
Can’t locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 3.
BEGIN failed–compilation aborted at Makefile.PL line 3.
make[1]: * Error 2
make: * Error 2
执行:
yum install perl-ExtUtils-MakeMaker package.
出现错误二 :
/bin/sh: line 1: asciidoc: command not found
make[1]: * [git-help.html] Error 127
make[1]: Leaving directory `/usr/local/src/git-2.8.3/Documentation’
make: * [doc] Error 2
缺少 asciidoc。
安装:
[root@localhost src]# cd asciidoc-8.6.9/
[root@localhost asciidoc-8.6.9]# bash ./configure
[root@localhost asciidoc-8.6.9]# sudo make install
再次编译,出现错误三:
XSLTPROC user-manual.html
http://docbook.sourceforge.ne…:1: parser error : Document is empty
compilation error: file docbook.xsl line 3 element import
xsl:import : unable to load http://docbook.sourceforge.ne…
make[1]: * [user-manual.html] Error 5
make[1]: Leaving directory `/usr/local/src/git-2.8.3/Documentation’
make: * [doc] Error 2
安装 XSLTPROC
[root@localhost asciidoc-8.6.9]# yum install -y xmlto
出现错误四 :
git: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
用下面方式查看,发现缺少 libcrypto.so.1.1
[root@localhost git-2.8.3]# ldd /usr/local/git/bin/git
linux-vdso.so.1 => (0x00007ffc792e3000)
libz.so.1 => /lib64/libz.so.1 (0x00007f33968b5000)
libcrypto.so.1.1 => not found
librt.so.1 => /lib64/librt.so.1 (0x00007f33966ad000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f3396491000)
libc.so.6 => /lib64/libc.so.6 (0x00007f33960c4000)
/lib64/ld-linux-x86-64.so.2 (0x00007f3396acb000)
重新安装 openssl
[root@localhost git-2.8.3]# yum install openssl*
然后
[root@localhost git-2.8.3]# ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
[root@localhost git-2.8.3]# ln -s /usr/local/lib64/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
再次查看:
[root@localhost git-2.8.3]# ldd /usr/local/git/bin/git
linux-vdso.so.1 => (0x00007ffd3f566000)
libz.so.1 => /lib64/libz.so.1 (0x00007f4f296eb000)
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007f4f2926a000)
librt.so.1 => /lib64/librt.so.1 (0x00007f4f29062000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f4f28e46000)
libc.so.6 => /lib64/libc.so.6 (0x00007f4f28a79000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f4f28875000)
/lib64/ld-linux-x86-64.so.2 (0x00007f4f29901000)
已经存在了。
4. 安装 Maven
在 /usr/local/ 下新建 maven 文件夹
在 /usr/local/src/ 里下载 apache-maven-3.6.1-bin.tar.gz
链接:https://maven.apache.org/down…
解压:[root@localhost src]# tar -zxvf apache-maven-3.6.1-bin.tar.gz
复制到 /usr/local/maven 里面
[root@localhost src]# mv /usr/local/src/apache-maven-3.6.1 /usr/local/maven/
配置环境变量:
MAVEN_HOME=/usr/local/maven/apache-maven-3.6.1
export MAVEN_HOME
export PATH=${PATH}:${MAVEN_HOME}/bin
重新刷新配置文件
source /etc/profile
验证结果
[root@localhost src]# mvn -version
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
Maven home: /usr/local/maven/apache-maven-3.6.1
Java version: 1.8.0_211, vendor: Oracle Corporation, runtime: /usr/local/java/jdk1.8.0_211/jre
Default locale: en_US, platform encoding: UTF-8
OS name: “linux”, version: “3.10.0-957.el7.x86_64”, arch: “amd64”, family: “unix”
以上的准备工作完事。
二. 安装 jenkins
1. 下载 jenkins,
下载地址:https://pkg.jenkins.io/redhat…
2. 安装:
[root@localhost jenkins]# rpm -ivh jenkins-2.176.1-1.1.noarch.rpm
warning: jenkins-2.176.1-1.1.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID d50582e6: NOKEY
Preparing… ################################# [100%]
Updating / installing…
1:jenkins-2.176.1-1.1 ################################# [100%]
3. 配置 Jenkins
vi /etc/rc.d/init.d/jenkins
添加图片红框内容。
4. 查看 jinkins 端口号:
vi /etc/sysconfig/jenkins
默认是 8080,如果和别的有冲突,修改即可。我修改成了 8088
5. 启动 Jenkins。
[root@localhost jenkins]# service jenkins start
Starting jenkins (via systemctl): Warning: jenkins.service changed on disk. Run ‘systemctl daemon-reload’ to reload units.
[OK]
6. 访问 Jenkins
http://192.168.11.129:8088/
报错了,开始排查错误
百度了一下,先查看 Jenkins 是否开启
很明显开启,然后查看防火墙
没有设置 Jenkins 的端口
接下来查看有没有开放我设置的 Jenkins 端口:
[root@localhost jenkins]# firewall-cmd –list-ports
80/tcp
只有 80,没有我们设置的 8089,添加 8089 端口。
[root@localhost jenkins]# firewall-cmd –permanent –zone=public –add-port=8089/tcp
查看一下发现多了。
注意:重启防火墙,一定要重启!
[root@localhost jenkins]# systemctl reload firewalld.service
重新访问链接
http://192.168.11.129:8088/
按章上面的提示,在服务器的文件里面获取密码,粘贴上即可
接下来点击跳过,这个是网上盗的图。。。。
跳过之后是设置账号密码,这个用户名密码用来登录 Jenkins:我用的账号 GspTest
之后的新手入门,实例配置,点击保存
点击开始使用进入 Jenkins 页面
点击后页面一直是空白,我只是重启了一下,在刷新页面就好用了。(查了一些资料,说什么都有)
成功后变成英文版的了,哈哈哈,显示如下:
下载插件在如下路径:
然后点击如下,选择要下载的插件,然后点击下载
你需要安装的插件有:
Build pipeline Plugin:没有这个,就没有 PipeLine 视图
Build Time Out:构建超时插件
Deploy to Container Plugin:部署容器插件
Email Extension Plugin:发送邮件插件
Git
JDK Tool Plugin
PipeLine
Publish over ssh
Timestamper
Workspace Cleanup Plugin
安装好以上插件后,进入上图的 installed,勾选上以上的这些插件,使其开启使用。
配置好上述插件,接下来我们就要来配置 JDK,Maven,git 环境了
注意:这些环境必须配置。
接下来进行配置:
配置 jdk
java_home 里的内容,就是配置时的 JAVA_HOME 路径
配置 git
注意:这个 git 有点日怪,他不是配置到 bin 目录上级,需要配置到具体的可执行文件位置!看上图中的文字 Path to git executable。如果换成 Java 的话,就应该配置 $JAVA_HOME/bin/javac 这个级别的,可执行文件~
配置 maven
maven_home 是到 bin 下就可以了。如图。
然后鼠标向上滑,配置下面内容
在配置 maven 的 setting.xml 时,建议加上阿里的 mirror,这样运行时,下载依赖的速度可以快几倍
在 setting.xml 中的 <mirrors> 标签中添加以下代码即可
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
一切配置成功后,最好重启下 jenkins 使上面的插件和环境生效,接下来开始构建 Pipeline
回到首页,点击 new Item 先创建个文件夹,方便以后多个项目分组方便
回到首页,会发现多了一个文件夹:
其中 IRS_DEV 是文件夹名。点击 IRS_DEV 进入,新建。
在服务器上生成公钥,输入 ssh-keygen -t rsa -C ‘xxx@xxx.com’(引号里的内容是邮箱),回车后连续按三次回车。公钥就生成了。
[root@localhost ~]# ssh-keygen -t rsa -C ‘714230503@qq.com’
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory ‘/root/.ssh’.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:jye/W5UqloE40DEXVg2UAR8xGkhGq93GTvJ7FZMjTIE 714230503@qq.com
The key’s randomart image is:
+—[RSA 2048]—-+
| o.*XB |
| o.*E+oo. |
| . o .o. . |
| + + .o = . |
| . = S .. +o |
| B o o.o |
| = *.o |
| *.o |
| ..+o |
+—-[SHA256]—–+
其中 id_rsa.pub 就是公钥文件,打开并将里面的内容粘贴到 git 的添加公钥内容里面。
然后在配置部署时,点击 add 按钮。
之后进入下图页面,然后在输入框里面添加秘钥,秘钥内容就是 /root/.ssh/ 里的 id_rsa 文件,将里面的内容粘到如图粉色框内的输入框内。
若要使 git 到指定文件夹,需要配置 SSH,在首页选择,如图:
找到 Publish over SSH 选项,添加如下内容,发现没有的,点击带有 advanced 的按钮。
在构建项目时,想指定发布的文件夹,添加如下内容: