ubuntu22.04安装jenkins并配置

准备

更新系统

sudo apt update
sudo apt upgrade

环境准备

jdk

安装

sudo apt install openjdk-11-jdk

验证

java -version

在这里插入图片描述

git

ubuntu配置git

maven

ubuntu配置maven

部署

添加 Jenkins 存储库

导入Jenkins存储库的GPG密钥

wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -

将Jenkins存储库添加到APT源列表中

sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

使APT获取最新的Jenkins软件包

sudo apt update

补充

遇到错误

E: The repository 'http://pkg.jenkins.io/debian-stable binary/ Release' is not signed.

或者

The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 3B4FE6ACC0B21F32

在这里插入图片描述

导入密钥

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 5BA31D57EF5975CA

更新apt-get的存储库

sudo apt-get -y update

更新一下apt-get本身的版本

sudo apt-get -y upgrade

重新update

sudo apt-get -y update

安装 Jenkins

sudo apt install jenkins

初始化

访问

http://ip:8080

在这里插入图片描述

管理员密码

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

在这里插入图片描述

启动和停止 Jenkins 服务

启动 Jenkins 服务:

sudo systemctl start jenkins

停止 Jenkins 服务:

sudo systemctl stop  jenkins

重启Jenkins 服务:

sudo systemctl restart  jenkins

配置

初始化插件

首次或不能确定,安装推荐
在这里插入图片描述

语言中文

Manage Jenkins -> Plugins -> Available plugins -> 输入【Locale】选中安装
在这里插入图片描述
系统管理 -> 系统配置->locale 输入zh_CN,并勾选选项,点击保存
在这里插入图片描述

用户角色配置

安装插件

系统管理 -> 插件管理 -> Available plugins -> Role-based Authorization Strategy

配置插件

系统管理 -> 全局安全配置 -> 授权策略 -> Role-Based Strategy 保存

管理和分配角色

系统管理->Manage and Assign Roles

  • 管理角色 : Manage Roles
  • 分配角色 : Assign Roles

配置maven

系统管理 -> 全局工具配置 -> 新增maven(取消勾选自动安装,可以配置本地) -> 保存
在这里插入图片描述

maven构建工具安装

系统管理 -> 插件管理 -> Available plugins -> Maven Integration
在这里插入图片描述

远程

安装Publish Over SSH插件

配置远程服务器

系统管理 -> 系统配置 -》 Publish over SSH -> SSH Servers(remote Directory 填写/ 即远程路径)
在这里插入图片描述
测试连接
在这里插入图片描述

使用

git 构建项目使用

首页->新建任务
在这里插入图片描述
输入名称->点击[构建一个maven项目] -> 确定
在这里插入图片描述
填写描述
在这里插入图片描述
配置git地址
在这里插入图片描述
配置仓库访问
在这里插入图片描述
在这里插入图片描述
编译成功
在这里插入图片描述

远程部署

配置调整
在这里插入图片描述
在这里插入图片描述

#!/bin/bash
export BUILD_ID=hellowWORKSPACE=/data/hello
JDK_PATH=/app/jdk/jdk1.8.0_381
JAR_NAME=hellow-0.0.1-SNAPSHOT.jarPID=`ps -ef | grep ${JAR_NAME} | grep -v grep | grep -v startup | awk '{print \$2}'`
echo $PID;
if [ ! "$PID" ] ;thenecho "进程不存在"
elseecho "进程存在,杀死进程PID$PID"kill -9 $PID
fiecho "服务启动开始"
nohup ${JDK_PATH} -jar ${WORKSPACE}/${JAR_NAME} &

sh 运行未配通

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/686073.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

el-upload组件的简单使用

最近公司的一个二期项目,开始要求复刻原有一期的功能页面。原先一期又不打算继续维护了,源码都没有。页面基本都涉及到了文件上传,以前很少使用到这个组件,公司有现成的表单设计器,文件上传都在组件里面拖动上传。在这…

【JavaEE】_线程与多线程的创建

目录 1. 线程的概念 2. 创建与使用多线程 2.1 方式1:继承Thread类 2.2 方式2: 实现Runnable接口 2.3 以上两种创建线程方式的对比 3. 多线程的优势-增加运行速度 1. 线程的概念 进程的存在是由于系统的多任务执行需求,这也要求程序员进…

LabVIEW卫星电视接收仿真系统

LabVIEW卫星电视接收仿真系统 随着卫星电视数字化的加速,传统模拟信号接收系统已无法满足需求。设计一套船载数字卫星电视接收系统,通过LabVIEW环境进行仿真实验,验证系统设计的可行性与有效性,满足数字信号接收的高精度要求&…

嵌入式Qt Qt中的信号处理

一.Qt中的信号处理 Qt消息模型: - Qt封装了具体操作系统的消息机制 - Qt遵循经典的GUI消息驱动事件模型 Qt中定义了与系统消息相关的概念; Qt中的消息处理机制: Qt的核心 QObject::cinnect函数: Qt中的“新”关键字: 实验1 初探…

Rust 基本环境安装

rust 基本介绍请看上一篇文章:rust 介绍 rustup 介绍 rustup 是 Rust 语言的安装器和版本管理工具。通过 rustup,可以轻松地安装 Rust 编译器(rustc)、标准库和文档。它也允许你切换不同的 Rust 版本或目标平台,以及…

petalinux安装的问题:

1. 安装是成功的,但是安装位置,就是用来存放petalinux的文件夹里没有文件 我是照着正点的文档安装的,出现的一个问题就是最后执行文件这里: -d 后面这个文件夹的路径,我看网上的教程也都是跟文档一致的 /opt/pkg/peta…

每日五道java面试题之java基础篇(十一)

目录: 第一题. Java死锁如何避免?第二题. 为什么⽤线程池?解释下线程池参数?第三题. 线程池的底层⼯作原理第四题. ReentrantLock中tryLock()和lock()⽅法的区别第五题. Sychronized和ReentrantLock的区别? 第一题. Java死锁如何避免&#x…

社区养老|社区养老服务系统|基于springboot社区养老服务系统设计与实现(源码+数据库+文档)

社区养老服务系统目录 目录 基于springboot社区养老服务系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、管理员部分功能 (1) 用户管理 (2)服务种类管理 (3)社区服务管理 &#xff08…

【教学类-19-08】20240214《ABAB式-规律黏贴18格-手工纸15*15CM-一页3种图案,A空,纵向、无边框》(中班)

背景需求 利用15*15CM手工纸制作AB色块手环(手工纸自带色彩),一页3个图案,2条为一组,黏贴成一个手环 素材准备 代码展示 # # 作者:阿夏 # 时间:2024年2月14日 # 名称:正方形数字卡…

2023 车载摄像头产业链梳理

1. 车载摄像头的发展和市场空间 车载摄像头,最早在车载行车记录仪、倒车影像功能中被应用。而随着汽车产业步入智能化, 360 环 视 、 ADAS 、 智 能 座 舱 等 应 用 为 车 载 摄 像 头 带 来 了 巨 大 的 市 场 需 求 。 特 别 是 在 自 动 驾驶 、 36…

BBC英式口语~发音练习~笔记整理

参考资料 原视频地址: https://www.bilibili.com/video/BV1D7411n7bS/?spm_id_from333.1245.0.0&vd_source5986fc7c8e6d754f3ca44233573aeaff 笔记图片

MySQL篇之覆盖索引

一、定义 覆盖索引是指查询使用了索引,并且需要返回的列,在该索引中已经全部能够找到。 二、例子 1. id为主键,默认是主键索引。 2. name字段为普通索引。 select * from tb_user where id 1 覆盖索引 select id,na…

如何选择适合的社区店项目,开启创业之路

对于想要创业的人来说,选择一个适合的社区店项目是成功的关键。在这篇文章中,我将以一名资深鲜奶吧创业者的身份,分享一些关于如何选择适合的社区店项目的经验和见解,希望能给大家提供有价值的参考。 一、市场调研 在选择社区店…

海量数据处理商用短链接生成器平台 - 4

第六章 架构核心技术-池化思想-异步结合 性能优化最佳实践 第1集 RestTemplate里面的存在的问题你知道多少- Broken pipe错误 项目就更新到第六章了,剩下的内容 放百度网盘里面了,需要的来取。 链接:https://pan.baidu.com/s/19LHPw36dsxPB7…

四、JMS规范

JMS规范 一、JMS是什么二、MQ中间件对比三、JMS组成1.JMS Provider2.JMS Producer3.JMS Consumer4.JSM Message4.1 消息头4.2 消息体4.2.1 生产者4.2.2 消费者 4.3 消息属性 四、JMS可靠性1.PERSISTENT - 持久化1.1 参数设置1.2 Queue持久化1.3 Topic持久化1.3.1 持久的发布主题…

Linux文件操作类命令 touch | stat | cp | scp | alias | mv | dd | cat | head | tail

touch 1.创建空文件(只有元数据信息,没有数据段内容)touch 1.txt 2.对创建或已经存在的文件改变元数据信息的时间记录值-d 改变创建时间touch -d 20240101 1.txt -a改变访问时间 -m改变修改时间stat 查看元数据信息 Blocks是512字…

排序算法---桶排序

原创不易,转载请注明出处。欢迎点赞收藏~ 桶排序(Bucket Sort)是一种排序算法,它将待排序的数据分到几个有序的桶中,每个桶再分别进行排序,最后将各个桶中的数据按照顺序依次取出,即可得到有序序…

【机器学习笔记】 9 集成学习

集成学习方法概述 Bagging 从训练集中进行子抽样组成每个基模型所需要的子训练集,对所有基模型预测的结果进行综合产生最终的预测结果: 假设一个班级每个人的成绩都不太好,每个人单独做的考卷分数都不高,但每个人都把自己会做的…

在 Android 上部署自定义 YOLOv8 教程

在本教程中,我将向您展示如何在 Android 设备上使用自定义数据集部署 YOLOv8。想要了解如何在 Android 设备上使用您自己的数据集部署 YOLOv8?本文将展示如何操作。 Android 上的 自定义 YOLOv8 🔥 ⚡️ 结果显示标题 对从 GoPro 流式传输到移…

Sora时代,我们的AI应该何去何从?——关于Sora大模型的思考

Sora时代,我们的AI应该何去何从?——关于Sora大模型的思考 一、Sora大模型:横空出世,让AI生成所有领域瑟瑟发抖二、Sora的出现代表了相关行业的灭亡?三、我们将何去何从? 一、Sora大模型:横空出世&#xf…