jenkins微服务
如果vim进去某个文件里,可以按键盘的向下键查阅其它部分
记得每天备份虚拟机的项目
一.在linux安装jenkins
1.上传文件
我们采用安装包的方式安装。
先用SShclient在/usr/local/下创建jenkins文件夹,然后向其中导入两个包


2.安装jenkins
再在控制台进入cd /usr/local/jenkins这个路径,并使用指令来安装jenkins
cd /usr/local/jenkins

安装指令
rpm -ivh jenkins-2.263-1.1.noarch.rpm
3.修改启动用户
再执行指令vim /etc/sysconfig/jenkins去把启动用户改为root
vim /etc/sysconfig/jenkins

,然后按键盘的ESC键, :wq保存退出
systemctl start Jenkins//启动jenkins
systemctl status Jenkins//查看jenkins的状态
systemctl start jenkins
systemctl status jenkins
运行时候遇到报错是正常的,大部分原因是没有加入java环境的问题。

执行vim /etc/rc.d/init.d/Jenkins
vim /etc/rc.d/init.d/Jenkins
来添加你的java环境,这里是你linux的java环境地址,我的是(/usr/local/jdk/jdk1.8.0_231/java)


然后按键盘的ESC键, (:wq)保存退出
再次启动jenkins systemctl start jenkins,然后会报错,再执行它说的systemctl daemon-reload就行,然后启动和查看jenkins的状态
systemctl start jenkinssystemctl daemon-reload


4.跳转到jenkins网站
在linux操作台完成上面的操作后,就可以去自己的浏览器上方的地址栏输入http://虚拟机ip:8080/

直接写自己的ip:8080也行
跳转成功后会来到一个页面,密码是在linux执行cat 画圈部分得到得到,复制下面的到输入框中然后继续。

cat /var/lib/jenkins/secrets/initialAdminPassword

跳转到第二个界面,直接点击右上角的X跳过就行了

因为你跳过了自定义,所以默认用户是admin,然后点击开始使用。

5.修改jenkins密码
进来先右上角的admin,再点左边的红圈,往下滑来到用户名和密码


把小黑点都删了然后自己重新起个密码,再点击左下角的save

Save后来到登录界面,用户是admin,密码是你刚才自己创立的
6.重新登录

二.插件查看和安装
1.查看已安装的插件(如果初次使用一般是没有插件的)


2.在linux里安装插件
我们再回到linux控制台上
cd /usr/local/Jenkins
解压文件(你在最开头拉进来的文件之一)
tar -zxvf jenkins-plugins.tar.gz
然后拷贝文件到/var/lib/jenkins/plugins/
cp -a plugins/* /var/lib/jenkins/plugins/
重新启动jenkins
/etc/init.d/jenkins restart

然后刷新jenkins页面重新登陆。

3.在linux安装git
再回到linux控制台 在/usr/local/下创建git文件夹

进入git路径下在执行解压操作
cd /usr/local/git
再进行解压
tar -zxvf git-2.33.0.tar.gz

安装所需要的依赖包
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker

输入y

complete说明解压成功

进入解压后的目录,执行make命令(make prefix=/usr/local/git all)。注意后面的git的名字不一样,这里的加载有点长。

make prefix=/usr/local/git all
执行完后在执行一次make prefix=/usr/local/git install
打开配置文件
vim /etc/profile
把放入其中
#set gitexport PATH=$PATH:/usr/local/git/bin

如果发生下面这种情况按键盘上的E正常操作就行。

配置完后再加载一次配置文件。
source /etc/profile
检查一下你的git
git –version

4.在Jenkins添加git配置


Username和password是你gitee的名称和密码(Gitee - 基于 Git 的代码托管和研发协作平台)


5.写git流水线
点击NEW Item

第一步是自己取得名字,取完点2,最后3

蓝圈是自己的描述,红圈是代码编写的地方,我们主要去这里。

蓝圈是流水线的代码,我们先去红圈自动生成我们的git码

选择sample step 选择 git:Git


Repository URL是你一个仓库的地址
Branch是你建立的一个分支名,这里默认虽然是master,但是也要看你设置的分支。
Credentials是你在开头添加git配置的那个。
这些信息填好后就点左下角的

先把框里的复制了。
6.如何在gitee相应信息
下面是如何在你的gitee页面获得上面的这些信息

Gitee中点击
来获得你的Repository URL,点击2分支获得你的分支名,比如我的分支名就有master和develop两个

三.maven配置
1.上传文件apache-maven-3.3.9-bin.tar.gz

2.解压
先进入到对应的文件路径下
cd /usr/local/maven

然后解压
tar -zxvf apache-maven-3.3.9-bin.tar.gz
查看是否解压成功

3.配置环境变量
vim /etc/profile
![]()
#set maven
MAVEN_HOME=/usr/local/maven/apache-maven-3.3.9
PATH=${MAVEN_HOME}/bin:${PATH}
export PATH

4.加载环境变量
source /etc/profile
5.测试maven安装是否成功
mvn -v

6.配置linux的maven的settings.xml文件
先在linux自己创建以下文件


#打开setting文件,修改中央仓库为阿里的,不然速度太慢
vim /usr/local/maven/apache-maven-3.3.9/conf/settings.xml# 找到<mirrors></mirrors>标签对,添加以下内容
<mirror><id>alimaven</id><name>aliyun maven</name><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf><releases><enabled>true</enabled><updatePolicy>always</updatePolicy></releases><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots>
</mirror># 指定下载源位置
<localRepository>/usr/local/maven/apache-maven-3.3.9/repository</localRepository>
四.在Jenkins配置maven
重写登录jenkins网页

一直往下滑

这里本来没有的
五.写maven流水线
1.
代码在这不好看,所以我粘记事本讲解去了。
下面代码中有的路径是2,(比如说'/var/lib/jenkins/workspace/2'中的2),是我的项目的名字。


checkout=0
node {stage('pull code'){git branch: 'develop', credentialsId: '06451a1d-12c4-4ab9-8ebf-bfda87bf8e9f', url: 'https://gitee.com/yaoyu-fish/demo1.git'
}stage('check docker container'){script{checkout=sh(script: 'docker ps | grep d2',returnStatus: true)} }stage('compile'){dir('/var/lib/jenkins/workspace/2'){sh '/usr/local/maven/apache-maven-3.3.9/bin/mvn clean install '}}stage('remove docker container'){if(checkout==0){sh 'docker stop d3'sh 'docker rm d3'sh 'docker rmi jenkinsdemo1'}}stage('make docker container'){dir('/var/lib/jenkins/workspace/2/target'){sh "echo FROM openjdk:8 > Dockerfile"sh "echo ADD nginx20240819-1.0-SNAPSHOT.jar /app.jar >> Dockerfile"sh "echo RUN bash -c '\"'touch /app.jar'\"' >> Dockerfile"sh "echo ENTRYPOINT ['\"'java'\"','\"'-jar'\"','\"'/app.jar'\"'] >> Dockerfile"sh "echo RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime >> Dockerfile"sh "docker build -t demo01 ."}}stage('start'){sh 'docker run --name d3 -p 8888:8888 -d demo01'}
}

其它操作
你可以直接点右边的小三角,或者直接点日期进入。第二个是控制台,你可以在这看报错,也可以在上面图片中的流水进程中的log来查看错误或者是进度。


查看你已经建立的流水线项目

蓝球表示运行成功,红球失败,灰球执行被中断。
今天的学习就到这,希望能帮到大家。
相关文章:
jenkins微服务
如果vim进去某个文件里,可以按键盘的向下键查阅其它部分 记得每天备份虚拟机的项目 一.在linux安装jenkins 1.上传文件 我们采用安装包的方式安装。 先用SShclient在/usr/local/下创建jenkins文件夹,然后向其中导入两个包 2.安装jenkins 再在控制…...
【Kotlin基于selenium实现自动化测试】初识selenium以及搭建项目基本骨架(1)
导读大纲 1.1 Java: Selenium 首选语言1.2 配置一个强大的开发环境 1.1 Java: Selenium 首选语言 Java 是开发人员和测试人员进行自动化 Web 测试的首选 Java 和 Selenium 之间的协同作用受到各种因素的驱动,从而提高它们的有效性 为什么Java经常被认为是Selenium的首选语言 广…...
汽车追尾为什么是后车的责任?
简单点说:因为人后面没有长眼睛。 结论 在汽车追尾事故中,通常情况下后车被认为是责任方的原因在于交通法规对驾驶安全标准的约定和实践中的责任识别原则。虽然追尾事故常见地被归责于后车,但具体判断并不是绝对的,仍需综合多种…...
[运维]4.bookinfo无法部署的问题
为了拉取镜像,搭建了阿里云镜像仓库,教程见:K8S中基于NFS-Subdir-External-Provisioner存储组件实现的StorageClass-CSDN博客 但是bookinfo的ratings和productpage无法运行,部署后显示crashLoopBackOff [rootmaster ~]# kubectl…...
ACT调试pycharm报错
在运行ACT 代码时,根据官方readme使用命令行需要在wandb选择的时候输入3 但是,使用pycharm运行的时候会报错 wandb.errors.UsageError: api_key not configured (no-tty). call wandb.login(key[your_api_key]) 网上搜索都是说要注册什么key…...
记一次控件提升后,运行却不显示的Bug
.h文件 #ifndef VOLUMETOOLBTN_H #define VOLUMETOOLBTN_H#include <QToolButton> #include <memory>class VolumeToolBtn : public QToolButton { Q_OBJECTpublic:explicit VolumeToolBtn(QWidget *parent nullptr);~VolumeToolBtn() override;void initUi(); p…...
关于深度学习torch的环境配置问题
已经下好了torch在虚拟环境中,结果在ipynb文件中无法运行 后来在终端直接用python语句编译 发现没有问题 在编辑测试py文件 发现runcode有问题 原来是插件默认base环境 具体操作参考VS Code插件Code Runner使用python虚拟环境_coderunner怎么在虚拟环境中使用-CSD…...
Linux工具的使用——yum和vim的理解和使用
目录 linux工具的使用1.linux软件包管理器yum1.1yum的背景了解关于yum的拓展 1.2yum的使用 2.Linux编辑器-vim使用2.1vim的基本概念2.2vim的基本操作2.3命令模式命令集2.3.1关于光标的命令:2.3.2关于复制粘贴的命令2.3.3关于删除的命令2.3.4关于文本编辑的命令 2.4插…...
websockets库使用(基于Python)
主要参考资料: 【Python】websockets库的介绍及用法: https://blog.csdn.net/qq_53871375/article/details/135920231 python模块websockets,浏览器与服务器之间的双向通信: https://blog.csdn.net/randy521520/article/details/134752051 目录 websocke…...
Electron 主进程与渲染进程、预加载preload.js
在 Electron 中,主要控制两类进程: 主进程 、 渲染进程 。 Electron 应⽤的结构如下图: 如果需要更深入的了解electron进程,可以访问官网 流程模型 文档。 主进程 每个 Electron 应用都有一个单一的主进程,作为应用…...
鸿蒙harmonyos next纯flutter开发环境搭建
公司app是用纯flutter开发的,目前支持android和iOS,后续估计也会支持鸿蒙harmonyos。目前谷歌flutter并没有支持咱们国产手机操作系统鸿蒙harmonyos,于是乎国内有个叫OpenHarmony-SIG的组织,去做了鸿蒙harmonyos适配flutter开发的…...
【学习资源】人在环路的机器学习
说明:本文图片和内容来源 Human-in-the-Loop Machine Learning Human-in-the-Loop Machine Learning Active learning and annotation for human-centered AI by Robert (Munro) Monarch, June 2021 介绍Human-in-the-Loop的目标,学习过程,…...
计算机毕业设计 基于Python的热门微博数据可视化分析系统的设计与实现 Python+Django+Vue 可视化大屏 附源码 讲解 文档
🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…...
031集——文本文件按空格分行——C#学习笔记
如下图,读取每行文本,每行文本再按空格分开读取一个字符串,输出到另一个文本: CAD环境下,代码如下: using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.Runtime; using System; using Sys…...
LabVIEW 成绩统计系统
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
SpringBoot技术栈:构建高效古典舞交流平台
第二章 相关技术介绍 2.1Java技术 Java是一种非常常用的编程语言,在全球编程语言排行版上总是前三。在方兴未艾的计算机技术发展历程中,Java的身影无处不在,并且拥有旺盛的生命力。Java的跨平台能力十分强大,只需一次编译…...
Docker 容器日志记录与管理:日志输出、轮转与配置实践
Docker 容器化应用的日志管理是运维中的重要环节。容器默认会将标准输出(stdout)和标准错误(stderr)记录到日志文件中,但这些日志文件如果不加管理,可能会无限制地增长,最终导致磁盘空间耗尽。因此,了解如何规范化容器日志管理、配置日志轮转策略以及合理存储位置至关重…...
Django学习笔记一:MVT的示例
Django的MVT(Model-View-Template)架构是一种将应用程序的不同部分分离的方法,旨在提高代码的可维护性和可扩展性。MVT将应用分解为三个主要部分:Model(模型)、View(视图)和Template…...
集合框架01:集合的概念、Collection体系、Collection接口
1.集合的概念 集合是对象的容器,定义了多个对象进行操作的常用方法。可实现数组的功能。 集合和数组的区别: 1.数组长度固定,集合长度不固定; 2.数组可以存储基本类型和引用类型,集合只能存储引用类型; …...
shadcn-vue 快速开始
介绍 基于 Radix Vue 和 Tailwind CSS 构建的可重复使用的组件 一个由社区主导的非官方 Vue 版本的 shadcn/ui。虽然我们与 shadcn 没有正式的合作或联系,但在开始这个项目之前得到了作者本人的同意。创建这个项目的原因是 Vue 生态系统中缺乏类似的项目ÿ…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
【Linux系统】Linux环境变量:系统配置的隐形指挥官
。# Linux系列 文章目录 前言一、环境变量的概念二、常见的环境变量三、环境变量特点及其相关指令3.1 环境变量的全局性3.2、环境变量的生命周期 四、环境变量的组织方式五、C语言对环境变量的操作5.1 设置环境变量:setenv5.2 删除环境变量:unsetenv5.3 遍历所有环境…...
华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)
题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...
STM32标准库-ADC数模转换器
文章目录 一、ADC1.1简介1. 2逐次逼近型ADC1.3ADC框图1.4ADC基本结构1.4.1 信号 “上车点”:输入模块(GPIO、温度、V_REFINT)1.4.2 信号 “调度站”:多路开关1.4.3 信号 “加工厂”:ADC 转换器(规则组 注入…...
rm视觉学习1-自瞄部分
首先先感谢中南大学的开源,提供了很全面的思路,减少了很多基础性的开发研究 我看的阅读的是中南大学FYT战队开源视觉代码 链接:https://github.com/CSU-FYT-Vision/FYT2024_vision.git 1.框架: 代码框架结构:readme有…...
ArcGIS Pro+ArcGIS给你的地图加上北回归线!
今天来看ArcGIS Pro和ArcGIS中如何给制作的中国地图或者其他大范围地图加上北回归线。 我们将在ArcGIS Pro和ArcGIS中一同介绍。 1 ArcGIS Pro中设置北回归线 1、在ArcGIS Pro中初步设置好经纬格网等,设置经线、纬线都以10间隔显示。 2、需要插入背会归线…...
__VUE_PROD_HYDRATION_MISMATCH_DETAILS__ is not explicitly defined.
这个警告表明您在使用Vue的esm-bundler构建版本时,未明确定义编译时特性标志。以下是详细解释和解决方案: 问题原因: 该标志是Vue 3.4引入的编译时特性标志,用于控制生产环境下SSR水合不匹配错误的详细报告1使用esm-bundler…...
