当前位置: 首页 > news >正文

Jenkins保姆笔记(1)——基于Java8的Jenkins安装部署

前言

记录分享下Jenkins的相关干货知识。分2-3篇来介绍Jenkins的安装部署以及使用。还是和以前一样,文章不介绍较多概念和细节,多介绍实践过程,以战代练,来供大家学习和理解Jenkins

概念

Jenkins是一个开源的自动化服务器,主要用于自动化软件开发过程中的构建、测试和部署任务。它使用Java编写,并提供了一个可扩展的插件生态系统,支持各种编程语言和工具。Jenkins支持持续集成(CI)和持续部署(CD)的概念,帮助开发团队更快地发布高质量的软件。

安装

下载

首先可以查看下Jenkins官网

如果条件允许,建议还是安装高版本甚至新版本的Jenkins,这会使得你在后面的插件安装中更方便点。但是不同版本的Jenkins和Java是有版本约束的。

Supported Java versions for the LTS release line are:

2.361.1 (September 2022) and newer

Java 11 or Java 17

2.346.1 (June 2022) and newer

Java 8, Java 11, or Java 17

2.164.1 (March 2019) and newer

Java 8 or Java 11

2.60.1 (June 2017) and newer

Java 8

1.625.1 (October 2015) and newer

Java 7

我的Java8,也就意味着只能用Jenkins版本在2.346及以下的。建议是2.346.x

我们这里下载Jenkins2.346.1(https://get.jenkins.io/war-stable/2.346.1/jenkins.war)来进行实验和学习。

安装

下载好war包,传到服务器后,记好war包的路径,晚点用的着。我们直接丢在root根目录下。

执行安装命令:

java -jar jenkins.war

安装结束会有个警告,告诉你该升级了,咱们只当它是个安装成功的标志。

Warning: You are running Jenkins on Java 1.8, support for which will end on or after September 1,Please refer to the documentation for details on upgrading to Java 11: https://www.jenkins.io
ect/upgrading-jenkins-java-version-8-to-11
Running from: /root/jenkins.war

安装就结束了,下面重点讲下启动。

启动

启动可以2种方法,命令行启动和服务启动。

通过命令行启停Jenkins(非service方式)

启动Jenkins
使用java -jar jenkins.war命令启动Jenkins时,该命令会在前台运行,并且会占用当前命令行窗口。如果希望Jenkins在后台运行,可以使用nohup命令或将其放入脚本中,并使用&将命令置于后台执行。例如:

nohup java -jar jenkins.war --httpPort=8080 &

 这条命令会让Jenkins在后台运行,并将输出重定向到nohup.out文件中。

停止Jenkins
如果Jenkins是通过上述方式启动的,您可以通过查找Java进程的PID,并使用kill命令来停止它。例如:

ps -ef | grep jenkins.war  
# 找到Jenkins进程的PID,然后执行  
kill -9 [PID]

通过systemctl启停Jenkins(需要配置为service)

如果您希望使用systemctl来管理Jenkins服务,您需要先将Jenkins配置为一个systemd服务。以下是一个基本的步骤说明:

验证路径及参数

如果参数正确,才有下文的服务文件。验证方法是用以下带路径的命令行尝试启动试试?

/usr/java/jdk-1.8-oracle-x64/bin/java -jar /root/jenkins.war --httpPort=8080 > jenkins_output.log 2>&1

然后查看jenkins_output.log文件以获取详细的错误信息 

创建Jenkins systemd服务文件

/etc/systemd/system/目录下创建一个名为jenkins.service的文件,并编辑它以包含类似以下内容:

[Unit]  
Description=Jenkins Server  
After=network.target
[Service]  
#如果要自定义用户记得要先去赋权,我们用root就不需要
#User=jenkins  
#Group=jenkins
Type=simple  
ExecStart=/usr/java/jdk-1.8-oracle-x64/bin/java -jar /root/jenkins.war --httpPort=8080   
Restart=on-failure 
[Install]  
WantedBy=multi-user.target

注意替换ExecStart中2个路径,分别是java的可执行性文件路径(也就是"$JAVA_HOME/bin/java"),后面一个路径就是之前下载的Jenkins WAR文件的实际路径。

完事重新加载systemd的配置,使其识别新创建的jenkins.service文件:

sudo systemctl daemon-reload

然后就是我们熟悉的 systemctl命令了:

sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl stop jenkins

启动若是不顺利,除了查询

sudo systemctl status jenkins -l

也还可以

journalctl -u jenkins.service

 登录

Jenkins安装成与不成,最直接的当然是登录,我们访问http://ip:8080后,如下图能打开了,就恭喜你,安装成功了。

后续界面会问你输入管理员的密码,密码在/var/lib/jenkins/secrets/initialAdminPassword文件里

vi /var/lib/jenkins/secrets/initialAdminPassword

输入密码进去,就到了插件选择页面,这里注意不要安装插件

之所以“选择插件来安装”,是为了“不选择”,也就是下个插件选择页面中,啥也不选。因为选啥都会失败的。咱们不选,然后进入下一步,创建个用户到了管理控制台。

至此,我们的安装工作已经全部结束,下次我们开始介绍进入控制台后,如何安装插件。

http://www.lryc.cn/news/411878.html

相关文章:

  • 学习c语言第18天(字符串和内存函数)
  • 无心剑七绝《潘展乐神》
  • Linux C++ 开发1 - 搭建C++开发环境
  • 吴恩达老师机器学习-ex4
  • C语言-函数例题
  • 鸿蒙应用框架开发【多HAP】程序框架
  • PG如何实现跨大版本升级
  • JDK 8 升级 17 及 springboot 2.x 升级 3.x 指南
  • 基于java的人居环境整治管理系统(源码+lw+部署文档+讲解等)
  • 深入了解Pip:Python包管理器的详细指南
  • Corsearch 用 ClickHouse 替换 MySQL 进行内容和品牌保护
  • 常见的应急救援设备有哪些_鼎跃安全
  • Vue 项目部署后首页白屏问题排查与解决
  • STM32 定时器移相任意角度和占空比,频率可调
  • C++ 与其他编程语言区别_C++11/14/17新特性总结
  • 玩转云服务:Google Cloud谷歌云永久免费云服务器「白嫖」 指南
  • 用18讲必看:宇哥亲划重点内容+核心题总结
  • 什么是安全生产痕迹化管理?如何做到生产过程中全程痕迹化管理?
  • VIsual Studio:为同一解决方案下多个项目分别指定不同的编译器
  • Flat Ads资讯:Meta、Google、TikTok 7月产品政策速递
  • 嵌入式C++、ROS 、OpenCV、SLAM 算法和路径规划算法:自主导航的移动机器人流程设计(代码示例)
  • 数据安全堡垒:SQL Server数据库备份验证与测试恢复全攻略
  • 嵌入式人工智能(40-基于树莓派4B的水滴传感器和火焰传感器)
  • EF访问PostgreSql,如何判断jsonb类型的数组是否包含某个数值
  • Qt 实战(8)控件 | 8.1、QComboBox
  • 模拟算法概览
  • uniapp手写滚动选择器
  • 智慧医院临床检验管理系统源码(LIS),全套LIS系统源码交付,商业源码,自主版权,支持二次开发
  • 超市是怎样高效完成客流统计与客流分析
  • 进程地址空间,零基础最最最详解