本文主要讲述在Centos7.2系统下搭建Jenkins环境, 在上一篇文章讲述了基于Docker搭建Jenkins环境,但是在实际应用中,性能很差。因此我决定去Docker,直接在Centos中安装。
安装Java 环境
- 下载JDK8
Oracal JDK8
下载后上传至服务器目录下/home/software
解压
1
2
3tar -xzvf jdk-8u144-linux-x64.tar.gz
mkdir /usr/java
mv jdk1.8.0_144 /usr/java/jdk1.8.0_144配置java环境变量
1
vi /etc/profile
在文件的末尾增加
1 | export JAVA_HOME=/usr/java/jdk1.8.0_144 |
保存退出后执行命令source /etc/profile, 使得新增的环境变量立即生效
- 查看java环境变量是否生效
1
2
3
4[root@atlascca001 ~]# java -version
java version "1.8.0_144"
Java(TM) SE Runtime Environment (build 1.8.0_144-b01)
Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
也可以用javac看一看
- 安装过程可能错误解析
- 有时候在您的系统可能已经用RPM方式装了openjdk.
1
2rpm -qa | grep java // 先查看
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.144-0.b01.el7_4.x86_64 // 对查看列表中的软件卸载
安装Jenkins
Jenkins默认用8080端口,先查下8080端口是否被占用
1
netstat -lnp|grep 8080
配置yum源
1
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
jenkins.repo内容是这样:
[jenkins]
name=Jenkins-stable
baseurl=http://pkg.jenkins.io/redhat-stable
gpgcheck=1
- 导入公钥
1 | rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key |
- 安装Jenkins
1 | yum install jenkins |
Jenkins配置
vi /etc/rc.d/init.d/jenkins, 搜索candidates, 添加一行/usr/java/jdk1.8.0_144/bin/java
修改默认端口8080: vi /etc/sysconfig/jenkins, 搜索JENKINS_PORT。安装过程错误解析
1). 选择Jenkins版本
a). 列出jenkins所有版本1
yum --showduplicates list jenkins
b). 安装2.70-1.1版本
1
yum install jenkins-2.70-1.1
2). Job for jenkins.service failed because the control process exited with error code. See “systemctl status jenkins.service” and “journalctl -xe” for details.
a). 执行 journalctl -xe, 我们发现
error: Could not load host key: /etc/ssh/ssh_host_dsa_key, 显然是没有SSH KEY造成的,
解决: ssh-keygen -t rsa -C “user-id@cisco.com”
b). 执行 journalctl -xe, 我们发现
Caused by: java.lang.UnsatisfiedLinkError: /tmp/jna–1712433994/jna1777215790425700984
这个问题花了我2天的时间,最终在Jenkins fails to start with JNA error找到了解决方案
解决:vi /etc/fstab
As root, edit /etc/fstab configuration file and remove noexec from the mount option of /tmp directory. Then run:
mount -o remount /tmp