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

相关推荐
光电的一只菜鸡2 小时前
ubuntu之坑(二十)——VMware虚拟机系统无法正常进入如何处理
linux·运维·ubuntu
青 春 记 忆2 小时前
Dify Docker Compose 通用无损升级指南:从备份、双版本预演到切换与回滚
运维·人工智能·python·docker·容器
Java王小怪4 小时前
Docker环境Redis没挂载保存数据
运维·docker·容器
你住过的屋檐4 小时前
【Nginx】linux上安装nginx
linux·运维·nginx
宵时待雨4 小时前
linux笔记归纳17:传输层协议UDP
linux·笔记·udp
晓晓_za8986686 小时前
开源 GEO 优化源码二次开发:贴牌改造与业务模块扩展实践
java·运维·服务器·开发语言·性能优化·开源
SCandL1526 小时前
k8s service
linux·容器·kubernetes
云计算DevOps-韩老师6 小时前
【MySQL运维DBA】【SQL基础系列002篇】
运维·mysql·dba
DBA大董7 小时前
TDengine3.0 DBA常用的运维命令和SQL2
运维·数据库·时序数据库·dba·tdengine
会飞的土拨鼠呀7 小时前
Linux的存储使用率应该如何计算
linux·运维·服务器