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…

中科星图GVE(案例)——云计算平台中如何利用expression进行波段运算(以NDVI为例)

简介 本文我们利用gve平台实现波段运算实现NDVI的计算,这里也就是如何将我们公式传递给云平台,一般是通过expression表达式来实现NDVI或者其它指数的计算。 云计算平台中利用expression进行波段运算是一种数字图像处理技术,用于从多个波段的图像数据中提取有用的信息。这种…

函数式编程要点

一、介绍和入门 1、函数式编程介绍 函数式编程思想在于简化冗余代码,将函数式接口(接口中只有一个未实现的方法)作为最高抽象。它关注的是入参、返回、语法结构,是一种极简的编程方式。相对面向过程和面向对象编程,函…

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

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

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

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

Linux文件信息,drwxr-xr-x. 2 root root 6 Jan 30 17:42 Desktop

drwxr-xr-x. 2 root root 6 Jan 30 17:42 Desktop drwxr-xr-x. drwxr-xr-x.d是文件类型rwx r-x r-x9位,每3位一组,一共3组,代表基本权限第一组 文件的创建者 | 拥有者第二组 和拥有者在一个组中第三组 其他用户rread,读的权限ww…

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…

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

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

数据结构实验之栈与队列五:下一较大值(一)

数据结构实验之栈与队列五&#xff1a;下一较大值&#xff08;一&#xff09; Description 对于包含n&#xff08;1<n<1000&#xff09;个整数的序列&#xff0c;对于序列中的每一元素&#xff0c;在序列中查找其位置之后第一个大于它的值&#xff0c;如果找到&#xff…

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

第六章 架构核心技术-池化思想-异步结合 性能优化最佳实践 第1集 RestTemplate里面的存在的问题你知道多少- Broken pipe错误 项目就更新到第六章了&#xff0c;剩下的内容 放百度网盘里面了&#xff0c;需要的来取。 链接&#xff1a;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.创建空文件&#xff08;只有元数据信息&#xff0c;没有数据段内容&#xff09;touch 1.txt 2.对创建或已经存在的文件改变元数据信息的时间记录值-d 改变创建时间touch -d 20240101 1.txt -a改变访问时间 -m改变修改时间stat 查看元数据信息 Blocks是512字…