centos7部署jenkins
一、安装jenkins
检查环境是否安装了 Java 的 JDK,因为 Jenkins 是用Java 语言写的,要想安装 Jenkins 之前,必须安装 JDK。
在CentOS上部署Jenkins有多种方式
1、war包方式部署
下载最新稳定版本,目前最新版本号为:Version 2.516.1
cd /data/jenkins
wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war
启动Jenkins,编辑启动脚本
vi start.sh
#!/bin/sh
kill -9 $(ps -ef |grep jenkins.war|awk '{print $2}')
sleep 1s
# start app
nohup java -jar jenkins.war --httpPort=99 > nohup.log 2>&1 &
# view startup log
tail -f nohup.log
2、使用官方Jenkins仓库
#1、添加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
#2、安装Jenkins:
sudo yum install jenkins
#3、启动Jenkins服务:
sudo systemctl start jenkins
#4、设置Jenkins服务开机自启:
sudo systemctl enable jenkins
#5、查看Jenkins状态:
sudo systemctl status jenkins
3、使用Docker容器
1、安装Docker(如果尚未安装):
sudo yum install docker -y
sudo systemctl start docker
sudo systemctl enable docker
2、拉取Jenkins Docker镜像:
sudo docker pull jenkins/jenkins:lts
3、运行Jenkins容器:
sudo docker run -p 8080:8080 -p 50000:50000 -v jenkins_home:/var/jenkins_home -d --name jenkins jenkins/jenkins:lts
二、访问控制台
默认端口8080, http://10.11.20.39:8080/ 可自行修改端口
输入管理员密码
首次访问会提示输入初始密码
#cat /root/.jenkins/secrets/initialAdminPasswordbde00d6f1667453e8b6f2cbe83433dcb
三、插件安装
第一次可选择推荐的插件,后续在根据需求再个性化安装插件。
四、创建管理员
五、默认目录迁移
1、创建目标目录并配置权限
默认工作目录 /root/.jenkins,
磁盘挂载存储空间不足等问题,迁移到/data目录
# 创建目标目录(如 /data/jenkins)
sudo mkdir -p /data/.jenkins# 复制原目录的所有者(root:root)和权限(通常 700 或 755)
sudo chown -R root:root /data/.jenkins
sudo chmod -R $(stat -c "%a" /root/.jenkins) /data/.jenkins # 继承原目录权限# 复制原目录的权限(如 755)
sudo chmod -R $(stat -c "%a" /var/lib/jenkins) /data/.jenkins
2、复制数据到新目录:
# 递归复制,保留权限和属性(关键!)
sudo rsync -av /root/.jenkins/ /data/.jenkins/sudo rsync -av /var/lib/jenkins/ /data/.jenkins/
3、验证数据完整性:
# 对比文件数量(应相等)
sudo find /root/.jenkins -type f | wc -l
sudo find /data/.jenkins -type f | wc -l# 对比目录大小(应接近)
sudo du -sh /root/.jenkins
sudo du -sh /data/.jenkins
4、修改 Jenkins 启动配置(关键)
vim ~/.bash_profile#添加
export JENKINS_HOME=/data/.jenkins
保存退出source ~/.bash_profile #刷新生效
5、重启jenkins服务
6、访问控制台可能会报错
com.thoughtworks.xstream.mapper.CannotResolveClassException: com.michelin.cio.hudson.plugins.rolestrategy.RoleBasedAuthorizationStrategyat
Caused: java.io.IOException: Unable to read /data/.jenkins/config.xml
大概率是权限问题,检查授权脚本
六、成功登录