Ubuntu安装Jenkis

Jenkins是一个开源软件项目,是基于java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

简单来说,它就是一个 持续集成 的工具!

持续集成

持续集成 (Continuous Integration),简称 CI 。频繁地将代码集成到主干之前,必须通过自动化测试,只要有一个测试用例失败,就不能集成。通过持续集成,团队可以快速从一个功能到另外一个功能。

好处:

  • 降低风险,由于持续集成不断去构建,编译和测试,可以很早发现问题
  • 减少重复性的工作
  • 持续部署,提供可部署单元包
  • 持续交付可供使用的版本

我们先通过这张图来看到 Jenkins 在其中起到的作用:

首先,开发人员将代码提交到 Git 仓库

然后 Jenkins 使用 Git 插件来拉取 Git 仓库的代码,然后配合 JDK、Maven 等软件完成代码编译,测试、审查、、测试和打包等工作

最后 Jenkins 将生成的 jar/war 推送到 测试/生产 服务器 ,供用户访问

整套步骤下来,作为开发人员我们只需要提交下代码,剩下的工作都交给了 Jenkins ,真是美滋滋,怎么没有早点上这个工具的车!

步骤1

配置可靠的DNS服务器

复制代码
cat << EOF | sudo tee /etc/resolv.conf
nameserver 8.8.8.8
nameserver 114.114.114.114
nameserver 223.5.5.5
nameserver 1.1.1.1
search local
options timeout:2
options attempts:3
EOF

测试DNS解析

复制代码
nslookup mirrors.tuna.tsinghua.edu.cn
nslookup baidu.com

步骤2

更新软件包列表

复制代码
apt update

安装Java(Jenkins依赖)

复制代码
sudo apt install openjdk-17-jdk -y

使用正确的Jenkins仓库密钥(修复apt-key警告)

复制代码
wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | sudo gpg --dearmor -o /usr/share/keyrings/jenkins-archive-keyring.gpg

添加Jenkins仓库(使用新方法)

复制代码
echo "deb [signed-by=/usr/share/keyrings/jenkins-archive-keyring.gpg] https://pkg.jenkins.io/debian-stable binary/" | sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null

更新并安装Jenkins

复制代码
sudo apt update
sudo apt install jenkins -y

步骤3

启动Jenkins服务

复制代码
sudo systemctl start jenkins
sudo systemctl enable jenkins

检查服务状态

复制代码
sudo systemctl status jenkins

开放防火墙端口(如果使用UFW)

复制代码
sudo ufw allow 8080
sudo ufw allow 50000
sudo ufw reload

步骤4

查看初始管理员密码

复制代码
sudo cat /var/lib/jenkins/secrets/initialAdminPassword

这是我获取到的
3b24f5eb88394cf1af597355e633e132

访问Jenkins

在浏览器中访问:http://你的服务器IP:8080

相关推荐
Hello World . .2 分钟前
Linux:Linux命令行音视频播放器
linux·音视频
qZ6bgMe433 分钟前
一个高性能的 .NET MQTT 客户端与服务器库
运维·服务器·.net
做cv的小昊7 分钟前
【conda】打包已有conda环境并在其他服务器上搭建
运维·服务器·python·conda·运维开发·pip·开发
Vfw3VsDKo8 分钟前
Android设备搭建本地RTSP服务器(基于live555)
android·运维·服务器
YYYing.10 分钟前
【Linux/C++网络篇(二) 】TCP并发服务器演进史:从多进程到Epoll的进化指南
linux·服务器·网络·c++·tcp/ip
zfoo-framework16 分钟前
[推荐]docker+jenkins+jenkinsfile+ansible实现多机批量部署
运维·jenkins·maven
SPC的存折18 分钟前
10、Ansible 生产级故障排查与运维最佳实践
linux·运维·ansible
aP8PfmxS228 分钟前
Lab3-page tables && MIT6.1810操作系统工程【持续更新】
java·linux·jvm
Jp7gnUWcI28 分钟前
.NET Win32磁盘动态卷触发“函数不正确”问题排查
运维·服务器·.net
林姜泽樾32 分钟前
linux入门第十八章,IP、主机名、域名解析
linux·服务器·tcp/ip