Centos-Jenkins安装
方式1:rpm包安装:
1.下载Jenkins 源代码包
官方下载:https://www.jenkins.io/doc/book/installing/linux/#red-hat-centos
国内清华源下载:https://mirrors.tuna.tsinghua.edu.cn/
2.安装JDK环境
参考我之前写的:Linux 不容易出错的安装 Jdk(https://199604.com/1962
)
3.安装配置Jenkins
rpm -ivh jenkins-2.323-1.1.noarch.rpm
安装时候说缺失 daemonize
依赖所以安装了daemonize
依赖
[root@gzbsc001 tmp]# rpm -ivh jenkins-2.323-1.1.noarch.rpm
警告:jenkins-2.323-1.1.noarch.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID 45f2c3d5: NOKEY
错误:依赖检测失败:
daemonize 被 jenkins-2.323-1.1.noarch 需要
[root@gzbsc001 tmp]#
[root@gzbsc001 tmp]#
[root@gzbsc001 tmp]# yum install daemonize
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
base
正在解决依赖关系
--> 正在检查事务
---> 软件包 daemonize.x86_64.0.1.7.7-1.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
正在安装 : daemonize-1.7.7-1.el7.x86_64 1/1
验证中 : daemonize-1.7.7-1.el7.x86_64 1/1
已安装:
daemonize.x86_64 0:1.7.7-1.el7
完毕!
[root@gzbsc001 tmp]#
[root@gzbsc001 tmp]#
[root@gzbsc001 tmp]# rpm -ivh jenkins-2.323-1.1.noarch.rpm
警告:jenkins-2.323-1.1.noarch.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID 45f2c3d5: NOKEY
准备中... ################################# [100%]
正在升级/安装...
1:jenkins-2.323-1.1 ################################# [100%]
安装完后路径:
/usr/lib/jenkins/jenkins.war
WAR包
/etc/sysconfig/jenkins
配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置。
/var/lib/jenkins/
默认的JENKINS_HOME目录
/var/log/jenkins/jenkins.log
Jenkins日志文件
3.1 修改Jenkins配置
vim /etc/sysconfig/jenkins
# 运行Jenkins守护进程的Unix用户帐户,修改默认用户名 默认jenkins
JENKINS_USER="root"
# 修改默认端口 默认8080
JENKINS_PORT="18080"
3.2修改Jenkins的Java环境
vim /etc/init.d/jenkins
# 增加Jenkins的java环境变量
/usr/local/jdk-11.0.2/bin/java
3.3启动测试Jenkins
systemctl restart jenkins
3.4 获取并输入账户密码
cat /var/lib/jenkins/secrets/initialAdminPassword
3.5 跳过插件安装
因为Jenkins插件需要连接默认官网下载,速度非常慢,而且经过会失败,所以我们暂时先跳过插件安装
选择-选择插件来安装-无
新建管理员账号,我这里是glj/glj123456
3.6修改插件下载地址
Jenkins国外官方插件地址下载速度非常慢,所以可以修改为国内插件地址: Jenkins->Manage Jenkins->Manage Plugins,点击Available
等待网页加载完成后,登录到服务器上修改地址(这样做是为了把Jenkins官方的插件列表下载到本地,接着修改地址文件,替换为国内插件地址)--自我感觉可省略-->(我科学上网的)
cd /var/lib/jenkins/updates
cp default.json default.json.bak
sed -i 's/http:\/\/updates.jenkinsci.org\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/http:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json
最后,Manage Plugins点击Advanced,把Update Site改为国内插件下载地址 https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
3.7重启Jenkins
http://192.168.31.101:18080/restart
3.8下载中文汉化插件
Jenkins->Manage Jenkins->Manage Plugins,点击Available,搜索"Chinese"
再次重启Jenkins后,就看到Jenkins汉化了
方式2:docker方式安装:
1.1. 下载镜像
docker pull gitlab/gitlab-ce
docker pull gitlab/gitlab-ce:14.1.8-ce.0
(这是我使用的)
1.2.docker运行Jenkins
1.避免出现文件权限错误
mdkir -p /data/jenkens_data/jenkins_home
chown -R 1000:1000 /data/jenkens_data/jenkins_home
1.运行镜像
docker run \
-itd \
-p 18080:8080 \
-p 50000:50000 \
-v /data/jenkens_data/jenkins_home:/var/jenkins_home \
-v /data/jenkens_data/apps/java:/var/java_home \
-v /data/jenkens_data/apps/maven:/var/maven_home \
-v /data/jenkens_data/apps/maven_repo:/var/maven_repo \
--restart always \
--privileged=true \
--env JAVA_OPTS="-Duser.timezone=GMT+08" \
--name jenkins \
jenkins/jenkins:2.325
java和maven是为了后续准备的
2.创建jenkins用户,避免出现文件权限错误
groupadd jenkins
useradd jenkins -g jenkins
chown -R jenkins:jenkins /data/jenkens_data/jenkins_home
3.访问Jenkins
//ip:端口号
http://192.168.31.101:18080
4.管理配置Jenkins
解锁
# 在安装完成后,默认生成了一个登录密码,首次登录需要这个密码。
#密码路径://容器内部
cat var/jenkins_home/secrets/initialAdminPassword
# 查找密码://进入jenkins容器
docker exec -it jenkins bash
# //查看密码
cat /var/jenkins_home/secrets/initialAdminPassword
登录成功后步骤和rpm包安装差不多....
唯一一点default.json的路径是宿主机:/data/jenkens_data/jenkins_home/updates/default.json
安装过程遇到的小问题
Jenkins容器docker run之后状态总是Exited
查看docker日志 :
docker logs jenkins
发现是目前权限问题
因为/data/jenkens_data/jenkins_home 目录是root权限
# 解决:
chown -R 1000:1000 /data/jenkins_home //用户组改变