jenkins+centos7上传发布net6+gitlab

news2024/11/27 0:49:22

工作中实践了一下jenkins的操作,所以记录一下这次经验

首先安装好jenkins并注册自己的jenkins账号

因为我们的项目代码管理使用的是gitlab,在开始之前先在jenkins上安装gitlab的插件,安装之后应该是要重启jenkins的服务,后续jenkins的一些页面就会显示一些关于gitlab的一些可配置项

如果遇到一些插件安装不了可能是jenkins的版本与插件的版本不兼容,所以可以考虑升级jenkins或者降级插件版本等等方案。

开始

1.添加服务器的凭据账号密码,这些凭据可用于服务器的登录、git的登录  等等。后续添加节点或者添加项目配置git都会需要

我本次的需求共添加了4个:

两个服务器节点的凭据(项目做负载),一个gitlab账号密码的凭据,一个gitlab api token的凭据。

新增两个服务器的凭据,比如我的  4.61和4.62服务器

然后新增的gitlab账号密码凭据:

这个重点:因enkins要与git相互协作,我们使用gitlab管理代码,所以此处需要添加一个git的凭据。

gitlab配置access token

2.添加服务器的node节点,用于创建项目时绑定要发布的服务器,我是负载两台服务器,所以我加两个,看自己的需求

注意:用法:要选择 Only build jobs with label expressions matching this node

3. 系统配置服务器节点、配置ssh私钥

jenkins按钮目录:

首先配置ssh私钥,需要到jenkins的服务端服务器上找到或者生成秘钥和公钥,但是文件名是这样的id_rsa 和 id_rsa.pub

秘钥   cat /root/.ssh/id_rsa
公钥   cat /root/.ssh/id_rsa.pub

上图的Passphrase我没有所以我没设置

还是在当前页,找到SSH Server然后填SSH Servers的服务,此处我也是添加俩61和62的

先别保存,还是在当前页面查找下面这张图并填写,然后再保存即可

4、配置项目的服务器,分为两部分操作

第一部分是jenkins部分的添加和配置项目

添加项目:

添加完后点击项目,然后点击配置进入到这个页面:

需要配置的几个地方:

参数配置:

git配置:

构建触发器的配置:

构建环境:就是发布到哪个服务器和在哪个服务器执行脚本,我还是添加两个4.61和4.62两个服务器,目录一直。

远程目录:就是把项目拉取到:/DATA/build/NZKH-FileDownloadApplication 文件夹下面

Exec命令:这个文件就是我们要执行的命令脚本文件的目录,后面我们会创建这个文件并写命令,包含构建,发布,运行  大概这几个操作

到此为止就配置完了,其余没选的或者我没截图的,默认就行

第二部分是linux部分的配置

这里我就写  4.61的配置了,因为4.62的操作完全一样操作即可

遇到的错误:

1、ERROR: Error fetching remote repo 'origin’

线上发布代码时遇到拉取不到git仓库。在网上查资料说是清理Workspaces可以解决。但是清理后还是出现同样的错误。

先排查jenkins服务器是否能访问gitlab服务器,若不能访问,检查是否是防火墙禁用22端口,若防护墙没有禁用22端口,那就看是否是阿里云禁用22端口。我出的问题是:我添加了一个4.61和4.62的服务器节点(他们服务器账号密码一样),但是我在配置项目的时候配置的是4.61的服务器节点,但是build now构建的时候,他的工作空间变成了4.62的,这样就会出现发布失败的问题。我的解决方案是:添加服务器节点的时候用法选择(他代表绑定这个节点的项目生效):

另外一个是:“尽可能使用此节点”出错是因为在发布4.61的时候就不空闲了,就会使用其他的节点

2、ERROR: Exception when publishing, exception message [Exec exit status not zero. Status [126]]

我遇到这个错误,是因为.sh脚本文件没有权限

配置sh文件权限  命令:chmod 777 publish.sh

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

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

相关文章

python+django+mysql个人博客项目部署(VMware部署)

目录 一、Vmware新建win7虚拟机 二、组件/软件安装 2.1 安装python3 2.2 更新pip 2.3 安装pycharm 2.4 安装django 2.5 win安装mysql 三、配置数据库 3.1 安装sqlite客户端 3.2 db.sqlite3导出为myblog.sql 3.3 Heidisql连接本地sql 四、部署项目 4.1 安装模块 4.2 尝试运行 …

python之 flask 框架(2)项目拆分的 执行逻辑

项目的结构图 app.py # 导入__init__.py 比较特殊 from APP import create_appapp create_app() if __name__ __main__:app.run(debugTrue)init.py # __inti__.py # 初始化文件,创建Flask应用 from flask import Flask from .views import bluedef create_ap…

OpenAI 上线新功能力捧 RAG,开发者真的不需要向量数据库了?

近期, OpenAI 的开发者大会迅速成为各大媒体及开发者的热议焦点,有人甚至发出疑问“向量数据库是不是失宠了?” 这并非空穴来风。的确,OpenAI 在现场频频放出大招,宣布推出 GPT-4 Turbo 模型、全新 Assistants API 和一…

初试 jmeter做压力测试

一.前言 压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常重要的步…

【遗传算法】Genetic algorithms (GAs) 遗传算法原理入门与应用代码

目录 1 遗传算法 2 遗传算法的基本步骤 3 Python示例 4 遗传算法解决TSP(旅行商问题) 1 遗传算法 遗传算法是一种优化搜索算法,模拟自然选择和遗传机制来寻找问题的最优解。这种算法的设计灵感来自于达尔文的进化论和遗…

Android studio配置Flutter开发环境报错问题解决

博主前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住也分享一下给大家 👉点击跳转到教程 报错问题截图 报错原因已经给出: You need Java 11 or higher to build your app with this version of G…

一步路难倒英雄汉?app自动化测试,怎么从零搭建appium!

不少软件测试想进阶到自动化测试,没有前人知道,只能像个无头的苍蝇,到处乱转,根本不知道从何处下手 特别是自学路上碰到需要安装什么程序、工具的时候,一个报错就需要在百度上查个半天,这么浪费时间的事情…

FPGA时序约束与分析-简单入门

FPGA时序约束与分析-简单入门 文章目录 FPGA时序约束与分析-简单入门1. 本课程概述2. 时序约束简介2.1 什么是时序约束2.2 合理的时序约束2.3 *基于Vivado的时序约束方法 3. 时序分析的基本概念3.1 时钟与时钟偏差3.2 建立时间和保持时间3.3 时序分析中路径、沿和关系的定义 4.…

立体库堆垛机控制程序故障输出功能块

故障输出块 A "提升变频器故障" // O "提升变频器通讯故障" // ON "提升变频器准备好" "提升变频故障" A "水平变频器故障" // O "水平变频器通讯故障" // ON…

Spring源码—初识IOC

👽System.out.println(“👋🏼嗨,大家好,我是代码不会敲的小符,双非大四,Java实习中…”); 📚System.out.println(“🎈如果文章中有错误的地方,恳请大家指正&a…

水库大坝安全监测预警系统的重要作用

水库大坝建造在地质构造复杂、岩土特性不均匀的地基上,在各种荷载的作用和自然因素的影响下,其工作性态和安全状况随时都在变化。如果出现异常,又不被及时发现,其后果不堪设想。全天候实时监测,实时掌握水库水位、雨情…

基于JuiceFS 的低成本 Elasticsearch 云上备份存储

杭州火石创造是国内专注于产业大数据的数据智能服务商,为了解决数据存储及高效服务客户需求,选择了 Elasticsearch 搜索引擎进行云上存储。基于性能和成本的考虑,在阿里云选择用本地 SSD ECS 机型自建集群。但由于是自建集群,如何…

uniapp Android如何打开常用系统设置页面?

uniapp Android 如何打开常用系统设置页面? 在使用App过程时,有时候会对一些权限获取,比如打开蓝牙、打开通知栏通知等设置,我们如何快速跳转到需要的设置页面? 文章目录 uniapp Android 如何打开常用系统设置页面&…

μC/OS-II---消息队列管理2(os_q.c)

目录 消息队列的主要优点消息队列和消息邮箱消息队列相关操作向消息队列发送消息(FIFO)向消息队列发送消息(LIFO)向消息队列发送消息(扩展)消息队列获取/无等待清空消息队列消息队列信息获取消息队列中断等待 消息队列的主要优点 消息队列的主要优点是解耦和异步通…

rocketmq5.X 单机搭建 虚拟机搭建rocketmq5.1.4 搭建最新版本mq rocketmq5.1.4版本单体搭建 rocketmq(一)

1. 官网下载地址: 下载 | RocketMQ 2. 配置环境: 我是在/etc/profile.d 新建了一个rocketmq_env.sh 配置了jdk, maven, 以及mq. mq文件下载的 配置完之后,刷新环境source /etc/profile 3. 配置rocket mq 的jvm配置,就是两个启…

Docker Compose详细教程(从入门到放弃)

对于现代应用来说,大多都是通过很多的微服务互相协同组成的一个完整应用。例如, 订单管理、用户管理、品类管理、缓存服务、数据库服务等,它们构成了一个电商平台的应 用。而部署和管理大量的服务容器是一件非常繁琐的事情。而 Docker Compos…

基于安卓android微信小程序的装修家装小程序

项目介绍 巧匠家装小程序的设计主要是对系统所要实现的功能进行详细考虑,确定所要实现的功能后进行界面的设计,在这中间还要考虑如何可以更好的将功能及页面进行很好的结合,方便用户可以很容易明了的找到自己所需要的信息,还有系…

PLC电力载波通讯,一种新的IoT通讯技术

前言: PLC-IoT 是 PLC 技术应用在物联场景的创新实践,有效解决电力线路信号干扰、衰减问题,支持 IP 化通信能力,使能终端设备智能化,构建智慧边缘联接。PLC让传统IoT有了更多的连接可能: 电力线通信技术适用的场景包括电力配用电网络、城市智慧路灯、交通路口信号灯、园…

Python代码运行速度提升技巧!Python远比你想象中的快~

文章目录 前言一、使用内置函数二、字符串连接 VS join()三、创建列表和字典的方式四、使用 f-Strings五、使用Comprehensions六、附录- Python中的内置函数总结关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项…

基于SSM的药店药品销售系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…