前言
下面叙述了三种jenkins安装的方式,jenkins安装之前必须有java环境因为他是java写的..
- yum安装只能安装最新版本的jenkins,但是jenkins是java写的所以他强依赖java版本,当你的服务器的java版本与jenkins版本冲突时还需要给jenkins重新指定新的java版本,如何单独给jenkins指定java版本看结尾
- war安装 - 简单,可以自定义你想要的jenkins版本,避免java与jenkins的版本冲突问题,因为最新jenkins只支持java11和java17
- docker安装 - 容器安装,就不多叙述了就主打一个方便,但是数据存储还是容器化技术的通病只能使用挂载进行备份防止容器损坏的时候不会导致数据丢失无法找回的后果.
大家根据对应情况选择对应安装方式
方式一 : yum安装
无法指定安装版本,安装的都是最新版本,如果你的jdk小于11,谨慎使用!
下载jenkins yum包
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
注意:如果出现cannot verify pkg.jenkins.io's certificate, issued by ‘/C=US/O=Let's Encryp 该错误则需要安装ca-certificates
yum install -y ca-certificates
导入密钥,如果你之前使用yum安装过jenkins时导入过密钥,那导入密钥这一步可能会报错,因为你已经有密钥了,忽略该错误即可
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
安装jenkins
yum install jenkins
启动jenkins
systemctl start jenkins
浏览器访问 ip:8080即可,如果访问不到可以尝试关闭防火墙,阿里云服务器记得安全组放开8080端口
systemctl stop firewalld
yum卸载jenkins
yum remove jenkins
rm -rf /etc/sysconfig/jenkins.rpmsave
rm -rf /var/cache/jenkins/
rm -rf /etc/init.d/jenkins.rpmsave
方式二 : war包启动
1.下载jenkins.war包
去官方下载自己想要的版本的war包 : https://get.jenkins.io/war-stable/ , 切记注意看与jdk的版本对应
也就是说2.361.1后续的版本就不在支持java8了,如果要使用的jenkins版本和当前项目jdk版本不兼容的话,也是有解决方案的-结尾附赠
2.上传war包
新建一个文件夹,将下载下来的war包使用ftp工具上传到该文件夹中
mkdir /usr/jenkins
进入war包存放所在目录
cd /usr/jenkins
后台启动jenkins,并把日志输入到当前目录的jenkins.log里面
nohup java -jar jenkins.war > jenkins.log &
解除防火墙或者放开8080端口并访问jenkins
systemctl stop firewalld
ip:8080
阿里云服务器记得去安全组放开8080端口
方式三 : docker安装
前提需要安装docker环境,可以看该文章 - linux如何安装docker环境
拉取docker容器并启动
docker run --name jenkins -d -u root -p 8080:8080 -p 50000:50000 -v /usr/jenkins/:/var/jenkins_home/ jenkins/jenkins
- -d 后台运行
- -p 端口映射 宿主机端口:docker容器内端口
- -v 挂载,也可以理解为备份,将将容器中jenkins的数据和配置都挂载一份到宿主机上, 宿主机目录:docker容器内目录,宿主机目录可以自定义
查看jenkins日志,可以看见管理员密码,就不需要进入容器然后去指定文件夹中查看了
docker logs -tf --tail 600 [容器id]
管理员密码
解除防火墙或者放开8080端口并访问jenkins
systemctl stop firewalld
ip:8080
阿里云服务器记得去安全组放开8080端口
使用yum安装如何给jenkins单独指定java版本
当你希望使用的jenkins版本和当前服务器java版本冲突时,你可以下载一个支持的java版本,然后去修改jenkins读取java目录的路径,就可以达到jenkins单独使用一个java版本,而不会影响你的服务器以及项目的java版本了.例如:你项目使用的jdk8,而你yum安装的jenkins版本需要jdk11,那你只需要下载一个jdk11放到一个目录里面(不需要配置环境变量也不要在/usr/bin下创建软连接),然后修改jenkins读取java配置的参数,修改成你java11存放的目录,那jenkins启动的时候就会去找你配置的java11目录,而不会去读取系统的java8了!
1.下载当前jenkins支持的jdk版本包,使用xftp传入服务器,然后解压并记录存放路径
解压命令
tar -zxvf {jdk包路径}
2.修改jenkins启动使用的jdk路径
cd /etc/init.d
vim jenkins #新增对应版本jdk的路径如下图
vim /usr/lib/systemd/system/jenkins.service
修改为,/usr/java/jdk-17.0.4 改成你自己的java路径
刷新配置文件
systemctl daemon-reload
systemctl enable jenkins
这样子jenkins去可以使用指定的java版本去启动了