Jenkins是一个开源的、提供友好操作界面的独立的开源自动化服务器,主要用于自动化与构建、测试、交付或部署软件相关的各种任务。Jenkins用Java语言编写,可在Tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(SCM)、构建工具结合使用。常用的版本控制工具有SVN、GIT,构建工具有Maven、Ant、Gradle。Jenkins 可以通过本机系统包、Docker 安装,甚至可以由任何安装了 Java 运行时环境 (JRE) 的机器独立运行。
基础介绍
- 操作系统:
- CentOSLinux release 7.8.2003(Core)
- [root@myjenkins ~]#
- IP地址:192.168.250.232
- JDK版本:jdk-1.8.0
- jenkins版本:jenkins-2.332.1
安装JDK
因为 jenkins是一款 java语言编写的开源软件,因此在部署 jenkins前需要安装 java环境。
1.下载JDK
打开下载地址,进行下载,需要注册用户:
- https://www.oracle.com/java/technologies/downloads/#java8
将下载的 jdk-8u331-linux-i586.tar.gz包进行上传。
[root@myjenkins mydown]# pwd /mydown [root@myjenkins mydown]# ls jdk-8u331-linux-i586.tar.gz [root@myjenkins mydown]#
2.解压到指定目录
将文件解压到 /usr/local目录下:
[root@myjenkins mydown]# tar -xzvf jdk-8u331-linux-i586.tar.gz -C /usr/local/ [root@myjenkins mydown]#
查看,已解压到以下目录:
[root@myjenkins jdk1.8.0_331]# pwd /usr/local/jdk1.8.0_331
3.JAVA环境变量修改
将以下环境变量追加到 profile文件最后:
[root@myjenkins /]# cp /etc/profile /etc/profile.ori.20220423 [root@myjenkins /]# vim /etc/profile [root@myjenkins /]# =================== export JAVA_HOME=/usr/local/jdk1.8.0_331 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH
4.环境配置生效
[root@myjenkins /]# source /etc/profile [root@myjenkins /]#
5.查看版本
[root@myjenkins /]# java -version -bash: /usr/local/jdk1.8.0_331/bin/java: /lib/ld-linux.so.2: bad ELF interpreter: 没有那个文件或目录 [root@myjenkins /]#
出现错误,需查找原因:
由于JDK的版本不对,需要安装 glibc.i686,用 yum方式安装。
[root@myjenkins /]# yum install glibc.i686 已加载插件:fastestmirror, langpacks Determining fastest mirrors * base: mirrors.huaweicloud.com * extras: mirrors.aliyun.com * updates: mirrors.huaweicloud.com base| 3.6 kB 00:00:00 extras | 2.9 kB 00:00:00 updates | 2.9 kB 00:00:00 (1/2): extras/7/x86_64/primary_db | 246 kB 00:00:00 (2/2): updates/7/x86_64/primary_db | 15 MB 00:00:02 正在解决依赖关系 --> 正在检查事务 ---> 软件包 glibc.i686.0.2.17-325.el7_9将被 安装 --> 正在处理依赖关系 glibc-common = 2.17-325.el7_9,它被软件包 glibc-2.17-325.el7_9.i686需要 --> 正在处理依赖关系 libfreebl3.so(NSSRAWHASH_3.12.3),它被软件包 glibc-2.17-325.el7_9.i686需要
然后再检验上面JDK安装是否正确:
[root@myjenkins /]# java -version java version "1.8.0_331" Java(TM) SE RuntimeEnvironment(build 1.8.0_331-b09) JavaHotSpot(TM) Server VM (build 25.331-b09, mixed mode) [root@myjenkins /]#
安装jenkinks
这里通过获取 jenkins.repo文件失败,用yum方式安装没有成功,改为rpm包安装。
官方指导信息:
- https://www.jenkins.io/doc/book/installing/linux/#red-hat-centos
1.下载RPM包
从清华镜像站下载rpm包 jenkins-2.332.1-1.1.noarch.rpm,然后上传到服务器
- https://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat-stable/
上传后查看:
[root@myjenkins mydown]# pwd /mydown [root@myjenkins mydown]# ll 总用量 236560 -rw-r--r--. 1 root root 1474946964月 2311:29 jdk-8u331-linux-i586.tar.gz -rw-r--r--. 1 root root 947397714月 2313:31 jenkins-2.332.1-1.1.noarch.rpm [root@myjenkins mydown]#
2.安装
[root@myjenkins mydown]# rpm -ivh jenkins-2.332.1-1.1.noarch.rpm 准备中... ################################# [100%] 正在升级/安装... 1:jenkins-2.332.1-1.1################################# [100%] [root@myjenkins mydown]#
3.查看jenkins安装信息
这里查看一下jenkins安装的相关信息及解释:
[root@myjenkins mydown]# rpm -ql jenkins /etc/init.d/jenkins #启动服务 /etc/logrotate.d/jenkins #日志滚动目录 /etc/sysconfig/jenkins #配置文件 /usr/bin/jenkins #库文件目录 /usr/lib/systemd/system/jenkins.service /usr/sbin/rcjenkins /usr/share/java/jenkins.war /usr/share/jenkins /usr/share/jenkins/migrate /var/cache/jenkins /var/lib/jenkins /var/log/jenkins [root@myjenkins mydown]#
4.修改jenkins配置文件
[root@myjenkins /]# cp /etc/sysconfig/jenkins /etc/sysconfig/jenkins.ori.20220423 [root@myjenkins /]# vim /etc/sysconfig/jenkins [root@myjenkins /]# cat etc/sysconfig/jenkins 主要修改以下内容: JENKINS_HOME="/var/lib/jenkins"#jenkins工作目录 #JENKINS_USER="jenkins" JENKINS_USER="root"#jenkins的启动用户 JENKINS_PORT="8080"#jenkins服务监听端口
5.修改jenkins启动文件
[root@myjenkins /]# cp /etc/init.d/jenkins /etc/init.d/jenkins.ori.20220423 [root@myjenkins /]# [root@myjenkins /]# vim /etc/init.d/jenkins
然后找到 candidates=,在第一行加入jdk的路径 /usr/local/jdk1.8.0_331,如下:
# see http://www.nabble.com/guinea-pigs-wanted-----Hudson-RPM-for-RedHat-Linux-td25673707.html candidates=" /usr/local/jdk1.8.0_331 /etc/alternatives/java /usr/lib/jvm/java-1.8.0/bin/java /usr/lib/jvm/jre-1.8.0/bin/java /usr/lib/jvm/java-11.0/bin/java /usr/lib/jvm/jre-11.0/bin/java /usr/lib/jvm/java-11-openjdk-amd64 /usr/bin/java "
6.启动 jenkins
启动jenkins,并且加入开机启动。
[root@myjenkins /]# systemctl daemon-reload [root@myjenkins /]# systemctl start jenkins [root@myjenkins /]# systemctl status jenkins.service ● jenkins.service - JenkinsContinuousIntegrationServer Loaded: loaded (/usr/lib/systemd/system/jenkins.service; disabled; vendor preset: disabled) Active: active (running) since 六 2022-04-2314:20:44 CST; 58s ago Main PID: 5261(java) Tasks: 44 CGroup: /system.slice/jenkins.service └─5261/usr/bin/java -Djava.awt.headless=true-jar /usr/share/java/jenkins.war --webroot=%C/jenkins/war --httpPort=8080 4月 2314:20:44 myjenkins jenkins[5261]: 2022-04-2306:20:44.357+0000[id=21] WARNING h.lifecycle.SystemdLifecycle#notify 4月 2314:20:44 myjenkins jenkins[5261]: com.sun.jna.LastErrorException: [1] 不允许的操作 4月 2314:20:44 myjenkins jenkins[5261]: at com.sun.jna.Native.invokeInt(NativeMethod) 4月 2314:20:44 myjenkins jenkins[5261]: at com.sun.jna.Function.invoke(Function.java:426) 4月 2314:20:44 myjenkins jenkins[5261]: at com.sun.jna.Function.invoke(Function.java:361) 4月 2314:20:44 myjenkins jenkins[5261]: at com.sun.jna.Library$Handler.invoke(Library.java:265) 4月 2314:20:44 myjenkins jenkins[5261]: at hudson.lifecycle.$Proxy19.sd_notify(UnknownSource) 4月 2314:20:44 myjenkins jenkins[5261]: at hudson.lifecycle.SystemdLifecycle.notify(SystemdLifecycle.java:64) 4月 2314:20:44 myjenkins jenkins[5261]: at hudson.lifecycle.SystemdLifecycle.onReady(SystemdLifecycle.java:35) 4月 2314:20:44 myjenkins jenkins[5261]: at hudson.WebAppMain$3.run(WebAppMain.java:258) [root@myjenkins /]#
7.查看jenkins监听端口号
[root@myjenkins /]# ss -lntp StateRecv-Q Send-Q LocalAddress:PortPeerAddress:Port LISTEN 0128127.0.0.1:631*:* users:(("cupsd",pid=1186,fd=12)) LISTEN 0100127.0.0.1:25*:* users:(("master",pid=1588,fd=13)) LISTEN 0128127.0.0.1:6011*:* users:(("sshd",pid=2640,fd=9)) LISTEN 0128*:111*:* users:(("rpcbind",pid=734,fd=8)) LISTEN 05192.168.122.1:53*:* users:(("dnsmasq",pid=1559,fd=6)) LISTEN 0128*:22*:* users:(("sshd",pid=1184,fd=3)) LISTEN 0128[::1]:631[::]:* users:(("cupsd",pid=1186,fd=11)) LISTEN 0100[::1]:25[::]:* users:(("master",pid=1588,fd=14)) LISTEN 0128[::1]:6011[::]:* users:(("sshd",pid=2640,fd=8)) LISTEN 0128[::]:111[::]:* users:(("rpcbind",pid=734,fd=11)) LISTEN 050[::]:8080[::]:* users:(("java",pid=5261,fd=128)) LISTEN 0128[::]:22[::]:* users:(("sshd",pid=1184,fd=4)) [root@myjenkins /]#
8.防火墙开放端口
这里防火墙开放 TCP8080端口:
[root@myjenkins /]# firewall-cmd --permanent --add-port=8080/tcp success [root@myjenkins /]# systemctl restart firewalld [root@myjenkins /]#
四.测试
1.登录系统
浏览器地址栏输入:
- http://192.168.250.232:8080/
根据提示,查询密码,然后输入,继续
[root@myjenkins /]# cat /var/lib/jenkins/secrets/initialAdminPassword 77d176381c7d472f831f3a0a83aea170 [root@myjenkins /]#
2.安装推荐插件
点击安装推荐的插件,进行安装,如图:
3.创建管理员用户
根据提示信息,创建管理员用户:
输入用户:moonrong,密码:superman123,邮箱:netskyman@163.com等信息。
点击保存并完成。
4.实例配置
Jenkins URL 用于给各种Jenkins资源提供绝对路径链接的根地址。这意味着对于很多Jenkins特色是需要正确设置的,例如:邮件通知、PR状态更新以及提供给构建步骤的 BUILD_URL环境变量。推荐的默认值显示在尚未保存,如果可能的话这是根据当前请求生成的。最佳实践是要设置这个值,用户可能会需要用到。这将会避免在分享或者查看链接时的困惑。
- http://192.168.250.232:8080/
保存并完成。
5.完成配置
至此, jenkins部署完成,点击开始使用 jenkins,进入主界面。
搬瓦工推荐方案
方案 | 内存 | CPU | 硬盘 | 流量/月 | 带宽 | 机房 | 价格 | 购买 |
---|---|---|---|---|---|---|---|---|
CN2 (最便宜) |
1GB | 1核 | 20GB | 1TB | 1Gbps | DC3 CN2 DC8 ZNET |
$49.99/年 | 直达 |
CN2 | 2GB | 1核 | 40GB | 2TB | 1Gbps | $52.99/半年 $99.99/年 |
直达 | |
CN2 GIA-E (最推荐) |
1GB | 2核 | 20GB | 1TB | 2.5Gbps | DC6 CN2 GIA-E DC9 CN2 GIA 日本软银 JPOS_1 荷兰 EUNL_9 |
$49.99/季度 $169.99/年 |
直达 |
CN2 GIA-E | 2GB | 3核 | 40GB | 2TB | 2.5Gbps | $89.99/季度 $299.99/年 |
直达 | |
HK | 2GB | 2核 | 40GB | 0.5TB | 1Gbps | 中国香港 CN2 GIA | $89.99/月 $899.99/年 |
直达 |
HK | 4GB | 4核 | 80GB | 1TB | 1Gbps | $155.99/月 $1559.99/年 |
直达 | |
TOKYO | 2GB | 2核 | 40GB | 0.5TB | 1.2Gbps | 日本东京 CN2 GIA | $89.99/月 $899.99/年 |
直达 |
TOKYO | 4GB | 4核 | 80GB | 1TB | 1.2Gbps | $155.99/月 $1559.99/年 |
直达 | |
搬瓦工优惠码:BWH3HYATVBJW | 2022年最新搬瓦工VPS购买图文教程 |