jenkins离线安装
一、准备jenkins服务器
建议配置至少4G、2C
jenkins默认是8080端口
二、安装jenkins
1.去清华源下载
https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/
2.下载好如下系列软件包即可
[root@jenkins-100 /opt]#ls
jdk-8u181-linux-x64.rpm jenkins-2.190.1-1.1.noarch.rpm jenkins_plugins.tar.gz
3.软件需求:由于jenkins是使用java语言开发,因此运行需要安装java运行时环境(jdk)。
可以通过清华镜像站下载jenkins安装包,以及jdk环境可以通过yum直接安装,也可以下载好rpm包安装
[root@jenkins-100 /opt]#rpm -ivh jdk-8u181-linux-x64.rpm
warning: jdk-8u181-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:jdk1.8-2000:1.8.0_181-fcs ################################# [100%]
Unpacking JAR files...
tools.jar...
plugin.jar...
javaws.jar...
deploy.jar...
rt.jar...
jsse.jar...
charsets.jar...
localedata.jar...
4.安装jenkins
[root@jenkins-100 /opt]#rpm -ivh jenkins-2.190.1-1.1.noarch.rpm
warning: jenkins-2.190.1-1.1.noarch.rpm: Header V4 DSA/SHA1 Signature, key ID d50582e6: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:jenkins-2.190.1-1.1 ################################# [100%]
检查jenkins版本
[root@jenkins-100 /opt]#rpm -qa jenkins
jenkins-2.190.1-1.1.noarch
三、jenkins配置文件
学习jenkins首先要明白一点,那就是jenkins一切皆文件,jenkins没有数据库,所有的数据都是以文件的形式存在,所以我们要了解jenkins的主要目录和文件。
[root@m01 ci_cd_rpm]# rpm -ql jenkins
/etc/init.d/jenkins
/etc/logrotate.d/jenkins
/etc/sysconfig/jenkins
/usr/lib/jenkins
/usr/lib/jenkins/jenkins.war
/usr/sbin/rcjenkins
/var/cache/jenkins
/var/lib/jenkins
/var/log/jenkins
jenkins加载插件很多,非常吃内存,且所有操作都是io操作,需要系统IO速度较快,需要机器配置较高
jenkins配置文件:/etc/sysconfig/jenkins
jenkins核心目录:/var/lib/jenkins
/usr/lib/jenkins/jenkins.war WAR包
/etc/sysconfig/jenkins 配置文件
/var/lib/jenkins/ 默认的JENKINS_HOME目录
/var/log/jenkins/jenkins.log Jenkins日志文件
/var/lib/jenkins/secrets/initialAdminPassword 存放初始密码
/var/lib/jenkins/plugins 插件目录
jenkins主配置文件
主配置文件解读
jenkins默认的用户为jenkins,生产环境建议使用jenkins用户,然后使用sudo进行授权,在学习过程中若是想要避免权限问题,可以直接改为root用户。
友情提醒,jenkins的配置文件,特别是用户,别乱改,否则jenkins里的job也无法用了
默认配置参数,只改一个root即可,因为需要用jenkins去执行很多命令,脚本等。
[root@m01 plugins]# grep -Ev "^$|^#" /etc/sysconfig/jenkins
JENKINS_HOME="/var/lib/jenkins" #jenkins主数据目录,数据备份,也只需要打包该文件夹即可
JENKINS_JAVA_CMD=""
JENKINS_USER="root" # 启动用户
JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true"
JENKINS_PORT="8080" # 启动端口,可以改
JENKINS_LISTEN_ADDRESS="" # 监听地址
JENKINS_HTTPS_PORT=""
JENKINS_HTTPS_KEYSTORE=""
JENKINS_HTTPS_KEYSTORE_PASSWORD=""
JENKINS_HTTPS_LISTEN_ADDRESS=""
JENKINS_DEBUG_LEVEL="5"
JENKINS_ENABLE_ACCESS_LOG="no"
JENKINS_HANDLER_MAX="100"
JENKINS_HANDLER_IDLE="20"
JENKINS_ARGS=""
四、启动,检查jenkins
[root@jenkins-100 /opt]#netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 999/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1226/master
tcp6 0 0 :::22 :::* LISTEN 999/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1226/master
[root@jenkins-100 /opt]#systemctl start jenkins
[root@jenkins-100 /opt]#netstat -tunlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 999/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1226/master
tcp6 0 0 :::8080 :::* LISTEN 11590/java
tcp6 0 0 :::22 :::* LISTEN 999/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1226/master
五、登录jenkins
5.1 查看jenkins默认的密码
[root@jenkins-100 /opt]#cat /var/lib/jenkins/secrets/initialAdminPassword
0b71ec8275a34bbd99ba450135397471
5.2 自定义jenkins插件
别用自带的jenkins社区插件,下载的太累,一般会用以装好的机器,导出的插件,离线导入更高效。
5.3 忘记密码/密码配置文件
如果忘记密码,可以改配置文件,强制改密
[root@jenkins-100 /opt]#cp /var/lib/jenkins/config.xml{,.bak}
删除config.xml 的如下配置
8 <useSecurity>true</useSecurity>
9 <authorizationStrategy class="hudson.security.FullControlOnceLoggedInAuthorizationStrategy">
10 <denyAnonymousReadAccess>true</denyAnonymousReadAccess>
11 </authorizationStrategy>
12 <securityRealm class="hudson.security.HudsonPrivateSecurityRealm">
13 <disableSignup>true</disableSignup>
14 <enableCaptcha>false</enableCaptcha>
15 </securityRealm>
然后重启服务即可
systemctl restart jenkins
2,重启Jenkins服务
3,进入首页>“系统管理”>“Configure Global Security”;(全局安全配置)
4,勾选“启用安全”;
5,点选“Jenkins专有用户数据库”,并点击“保存”;
6,重新点击首页>“系统管理”,发现此时出现“管理用户”;
7,点击进入展示“用户列表”;
8,点击右侧进入修改密码页面,修改后即可重新登录。
5.4 jenkins插件安装
因为下载插件的官方在国外,网络可能会不稳定。
如果在安装插件那一步出现offline或者找不到XXX插件的报错,可以换个网络试试。
如果实在是无法下载插件,可以将别人下载好的插件打包给你,解压到/var/lib/jenkins/plugins/目录
需要重启jenkins服务,才能在web界面读取到解压的插件
在清华源站下载插件
https://mirrors.tuna.tsinghua.edu.cn/jenkins/plugins/
下载.hpi文件,然后在jenkins里面导入上传即可,自动安装,重启生效
可以更换插件源为清华的
https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
替换
https://updates.jenkins.io/update-center.json
5.5 导入本地插件(汉化插件)
可以把插件备份的机器,所有的插件目录/var/lib/jenkins/plugins 资料直接打包
解压缩到新插件目录即可,jenkins一切皆文件,可以直接迁移
jenkins没有数据库,一切皆文件,都是写在xml文件里
插件已经准备好了,如果没有可以找我要
[root@jenkins-100 /opt]#tar -zxf jenkins_plugins.tar.gz
[root@jenkins-100 /opt]#ls
jdk-8u181-linux-x64.rpm jenkins-2.190.1-1.1.noarch.rpm jenkins_plugins.tar.gz plugins
[root@jenkins-100 /opt]#cd plugins/
[root@jenkins-100 /opt/plugins]#ls |wc -l
263
移动插件到jenkins的插件目录即可
[root@jenkins-100 /opt/plugins]#mv * /var/lib/jenkins/plugins/
重启jenkins,查看插件列表
systemctl restart jenkins
已改为中文了
5.6 修改时区
System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')