Jenkins的一些其他操作

Jenkins的一些其他操作

1、代码仓库Gogs的搭建与配置

Gogs 是一款极易搭建的自助 Git 服务,它的目标在于打造一个最简单、快速和轻松的方式搭建 Git 服务。使用 Go

语言开发的它能够通过独立的二进制进行分发,支持了 Go 语言支持的所有平台,包括 Linux、Mac OS、

Windows 以及 arm 平台。与传统 Git 相比它最大的优势在于拥有图形化界面。

1.1 下载镜像

# 搜索镜像
$ docker search gogs

在这里插入图片描述

# 下载镜像
$ docker pull gogs/gogs

在这里插入图片描述

1.2 创建Gogs容器

$ docker run -di --name=gogs -p 10022:22 -p 3000:3000 -v /var/gogsdata:/data gogs/gogs

在这里插入图片描述

1.3 使用浏览器进行访问

访问路径:http://192.168.160.165:3000

在这里插入图片描述

填写相关信息:

此处选择数据库类型为:SQLite3

修改域名为:192.168.160.165

修改应用 URL 为:http://192.168.160.165:3000/

在这里插入图片描述

在这里插入图片描述

随后点击立即安装,Gogs 安装与配置完成。

注册用户用户名和密码:

在这里插入图片描述

在这里插入图片描述

然后进行登录:

在这里插入图片描述

至此,代码仓库Gogs搭建完成。

2、Gitee API令牌配置

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

点击创建:

在这里插入图片描述

在这里插入图片描述

点击系统配置:

在这里插入图片描述

在这里插入图片描述

配置好信息之后点击测试连接,显示成功代表配置成功。

3、打包Maven项目为Docker镜像并运行

我们在代码仓库https://gitee.com/zsx242030/jenkins_demo.git中添加 Dockerfile 文件:

FROM java:8
COPY target/*.jar /app.jar
CMD ["--server.port=9999"]
EXPOSE 9999
ENTRYPOINT ["java","-jar","/app.jar"]

和 pom.xml 在同一个目录下。

修改 jenkins 执行脚本:

#!/bin/bash
mvn clean package
docker stop jenkins_demo
docker rm jenkins_demo
docker rmi jenkins_demo
docker build -t jenkins_demo .
docker run -d -p 9999:9999 --name jenkins_demo jenkins_demo:latest

4、Docker安装Jenkins配置Jenkins镜像加速

# 宿主机上
cd /var/jenkins_home
vi hudson.model.UpdateCenter.xml

将url地址改为下面的,不然后面安装jenkins插件很慢 :

<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://updates.jenkins.io/update-center.json</url>
  </site>
</sites>
<?xml version='1.1' encoding='UTF-8'?>
<sites>
  <site>
    <id>default</id>
    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>
  </site>
</sites>
# 宿主机上
cd /home/jenkins_home/updates

# 替换url
sed -i 's#https://updates.jenkins.io/download#https://mirrors.huaweicloud.com/jenkins#g' default.json && sed -i 's#http://www.google.com#https://www.baidu.com#g' default.json 

再进入插件下载管理页面 http://ip:9090/pluginManager/advanced,使用

https://cdn.jsdelivr.net/gh/jenkins-zh/update-center-mirror/tsinghua/current/update-center.json

替换原来的json

5、Jenkins容器内部安装python3

5.1 前置准备

# 进入容器
$ docker exec -it 68268e74ba86 /bin/bash

# 获取最新的软件包
$ apt-get update

# 升级已安装的软件包
$ apt-get upgrade

# 提前安装,以便接下来的配置操作
$ apt-get -y install gcc automake autoconf libtool make
$ apt-get -y install make* 
$ apt-get -y install zlib*
$ apt-get -y install openssl libssl-dev
$ apt-get install sudo
$ apt-get install wget

5.2 下载python

$ cd /usr/local/src

$ wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
# 或者
$ wget  http://npm.taobao.org/mirrors/python/3.9.10/Python-3.9.10.tgz

$ tar -zxvf Python-3.9.10.tgz 
$ mv Python-3.9.10 py3.9.10
$ cd py3.9.10

5.3 make编译安装

$ ./configure --prefix=/var/jenkins_home/python3 --with-ssl
$ make
$ make install

5.4 添加软链接

# 添加python3软链接
$ ln -s /var/jenkins_home/python3/bin/python3.9 /usr/bin/python3

# 添加pip3软链接 
$ ln -s /var/jenkins_home/python3/bin/pip3 /usr/bin/pip3

5.5 添加环境变量

# 配置环境变量
$ vim /root/.bashrc
# 添加如下内容
export PATH=/var/jenkins_home/python3/bin:$PATH 

# 配置文件生效
$ source /root/.bashrc

5.6 测试

$ python3 --version
Python 3.9.10
5.7 python依赖安装
# 首先在python项目的根目录下生成一个requirement.txt文件
$ pip3 freeze > requirements.txt  

# 然后将requirement.txt上传到主机,从主机复制到容器内指定位置
$ docker cp requirements.txt jenkins:/usr/local/src

# 最后安装项目所需的第三方库
$ pip3 install -r requirements.txt
$ pip3 install  -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

# 注意如果你想手动在服务器运行代码,需要指定你的Python环境地址安装库
pip3 install --target=/var/jenkins_home/python3/lib/python3.9/site-packages -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
# 注意: --target指定的是之前创建Python环境的目录,我们需要将库安装在此目录下,因为我们的Python环境使用
# 的是该路径,如果只是执行pip3 install的话,会将库装在全局环境,但我们的Python环境又使用的不是全局环境
# 执行Python代码时会报错,找不到库
# 如果找不到pip3命令执行安装
apt -y install python3-pip

6、安装allure

$ cd /usr/local/src

$ wget https://github.com/allure-framework/allure2/releases/download/2.22.1/allure-2.22.1.zip

# 也可以去https://github.com/allure-framework/allure2/releases下载安装包
# 然后上传到docker容器
$ docker cp allure-commandline-2.13.3.zip jenkins:/usr/local/src

# 解压
$ unzip allure-2.22.1.zip

# 授权
$ mv allure-2.22.1 allure
$ chmod -R 777 allure

# 环境变量配置
$ vim /root/.bashrc
# 添加如下内容
export PATH=/usr/local/src/allure/bin:$PATH

# 配置文件生效
$ source /root/.bashrc

# 验证
$ allure --version
2.22.1

7、全局配置Allure Commandline

7.1 安装Allure插件

在这里插入图片描述

安装完之后进行重启。

7.2 配置全局Allure

在这里插入图片描述

7.3 项目中进行配置

在这里插入图片描述

7.4 查看

运行 jenkins,查看生成的报告。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

由于代码中并没有单元测试,所以生成的报告中为0。

8、Jenkins打包前端

安装 NodeJS插件。

在系统设置->全局工具配置中进行插件配置。

在项目中执行打包脚本。

9、Jenkins更改时区

在这里插入图片描述

在这里插入图片描述

10、钉钉机器人通知

10.1 安装DingTalk插件

在这里插入图片描述

10.2 钉钉创建机器人

钉钉群 -> 智能群助手 -> 添加机器人 -> 自定义。

获取到 webhook 的地址:

https://oapi.dingtalk.com/robot/send?access_token=57af98ce4ce5f5w5a66cb829df72c539ere0e8fe65e9093c6a254114ecf555f8

加签:

SEC5d2ad5bd4cea2c4cf6430145472cdd7q8dda5b8bea67a029fbdcbd84f7db7534

10.3 Jenkins中进行钉钉配置

进入系统管理:

在这里插入图片描述

点击钉钉,进行如下配置:

在这里插入图片描述

在这里插入图片描述

点击测试,成功,钉钉中会收到一条消息。

在这里插入图片描述

10.4 任务中添加机器人

在这里插入图片描述

10.5 运行打包

在这里插入图片描述

在这里插入图片描述

11、Jenkins打包go程序

安装插件

在这里插入图片描述

在系统设置->全局工具配置中进行插件配置

在这里插入图片描述

在项目中执行打包脚本。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vivado产生报告阅读分析-Report Power4

在布线后会生成“ Power Report ” &#xff08; 功耗报告 &#xff09;&#xff0c; 它基于当前器件工作条件和设计的切换率来报告功耗详情。功耗分析要求网表已完成综合或设计已完成布局布线。 • set_operating_conditions 命令用于设置工作条件。 • set_switching_ac…

【深度学习】SimSwap: An Efficient Framework For High Fidelity Face Swapping 换脸,实战

代码&#xff1a;https://github.com/neuralchen/SimSwap 文章目录 摘要介绍RELATED WORK实验结论代码实操 SimSwap是一个高保真度人脸交换的高效框架。它将源脸的身份转移到目标脸上&#xff0c;同时保留目标脸的属性。该框架包括ID注入模块&#xff08;IIM&#xff09;&#…

【Python基础篇】标识符

博主&#xff1a;&#x1f44d;不许代码码上红 欢迎&#xff1a;&#x1f40b;点赞、收藏、关注、评论。 格言&#xff1a; 大鹏一日同风起&#xff0c;扶摇直上九万里。 文章目录 一 Python中的标识符二 Python中常见的关键字三 合法的标识符 一 Python中的标识符 定义&…

计算机视觉的应用16-基于pytorch框架搭建的注意力机制,在汽车品牌与型号分类识别的应用

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下计算机视觉的应用16-基于pytorch框架搭建的注意力机制&#xff0c;在汽车品牌与型号分类识别的应用&#xff0c;该项目主要引导大家使用pytorch深度学习框架&#xff0c;并熟悉注意力机制模型的搭建&#xff0c;这个…

Spring Framework 核心容器详解:Core、Beans、Context 和 Expression Language 模块

Spring可能成为您的所有企业应用程序的一站式商店。但是&#xff0c;Spring是模块化的&#xff0c;允许您挑选适用于您的模块&#xff0c;而无需引入其他模块。下面的部分提供了Spring Framework中所有可用模块的详细信息。 Spring Framework提供了大约20个模块&#xff0c;可…

本地顺风车小程序源码系统 源码开源可二次开发 出行无忧:一键预约顺风车 带完整搭建教程

共享经济和互联网技术的发展。随着人们出行需求的不断增加&#xff0c;顺风车作为一种绿色、共享的出行方式&#xff0c;越来越受到广大用户的青睐。为了满足这种需求&#xff0c;本地顺风车小程序应运而生&#xff0c;为用户提供了一种方便、快捷、可靠的顺风车出行服务。 以…

栈和队列:队列

目录 队列概念&#xff1a; 队列&#xff1a; 先进先出&#xff1a; 与栈的区别&#xff1a; 队列的实现&#xff1a; 关于节点指针的封装&#xff1a; 初始化&#xff1a; 入队&#xff1a; 出队&#xff1a; 获取队头元素和获取队尾元素&#xff1a; 判断队列是…

如何以编程方式获取Android手机的电话号码?

在创建Android应用程序时,很多时候我们需要通过手机号码进行身份验证。为了增强用户体验,我们可以在移动系统中自动检测手机号码。因此,让我们开始一个android项目吧!我们将创建一个按钮,单击它时将获得一个手机号码并将其显示在 TextView 中。 分步实施 步骤 1:创建新项…

程序员突如其来的生日惊喜

不得不说&#xff0c;今天就是我的生日。也就是吹个蜡烛吃个蛋糕&#xff0c;但是我非常惊讶&#xff0c;我的博客在今天突然飙涨&#xff01; Top1 我自己看的时候都懵了&#xff0c;就是存了一下自己的程序&#xff0c;然后这个阅读&#xff0c;是真的出乎我的意料。我完全没…

掌握接口自动化测试,看这篇文章就够了,真滴简单

前言&#xff1a; 接口测试在我们测试工作当中&#xff0c;经常会遇到&#xff0c;对于接口自动化操作&#xff0c;也越来越多的公司进行实践起来了&#xff0c;市面上有很多工具可以做接口自动化比如&#xff1a;Postman、JMeter、SoapUI等。这一篇安静主要介绍通过代码的形式…

CCF CSP认证历年题目自练Day46

兄弟们记得去官网报名CSP认证。 题目 试题编号&#xff1a; 201709-3 试题名称&#xff1a; JSON查询 时间限制&#xff1a; 1.0s 内存限制&#xff1a; 256.0MB 问题描述&#xff1a; 问题描述   JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式&#xff…

“大数据分析师”来了,提高职业含金量,欢迎来领

大数据分析师是指在不同行业中&#xff0c;专门从事相关数据的收集、整理、分析&#xff0c;并依据数据通过科学算法模型进行行业研究、评估和预测等工作的专项人才。应用行业涉及互联网信息技术企业、科研院校、金融行业、制造业、物流、生物医疗、农业等大数据相关行业。 常…

IDEA如何打断点调试

目录 1. 设置断点2. 调试3. 调试的基本操作3.1 step over3.2 step into 跟 Force step into3.3 step out3.4 resume program3.5 mute breakpoints3.6 view breakpoints3.6 条件断点 编写代码的时候&#xff0c;有时候我们需要跟踪代码的运行情况&#xff0c;使用断点调试就是一…

基于Vue+SpringBoot的农村物流配送系统 开源项目

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统登录、注册界面2.2 系统功能2.2.1 快递信息管理&#xff1a;2.2.2 位置信息管理&#xff1a;2.2.3 配送人员分配&#xff1a;2.2.4 路线规划&#xff1a;2.2.5 个人中心&#xff1a;2.2.6 退换快递处理&#xff1a;…

【Machine Learning in R - Next Generation • mlr3】

本篇主要介绍mlr3包的基本使用。 一个简单的机器学习流程在mlr3中可被分解为以下几个部分&#xff1a; 创建任务 比如回归、分裂、生存分析、降维、密度任务等等挑选学习器&#xff08;算法/模型&#xff09; 比如随机森林、决策树、SVM、KNN等等训练和预测 创建任务 本次示…

创信短信API的无代码开发集成:电商平台、CRM和用户运营

无代码开发&#xff1a;集简云与创信短信API的连接 创信短信API的无代码开发集成&#xff0c;旨在为电商平台、CRM和用户运营提供便利。作为一款超级软件连接器&#xff0c;集简云可以在无需开发&#xff0c;无需代码知识的情况下&#xff0c;轻松连接创信短信与近千款软件系统…

软文营销如何正确蹭热点?媒介盒子为您解答

软文营销过程中为什么需要借助热点营销&#xff1f;热点营销的三大优势就是“传播速度快、爆发效果猛、有效时间短”&#xff0c;追热点的最终目的就是为了给产品或品牌带来关注度。 虽然蹭热点很重要&#xff0c;但是也有许多品牌在营销过程中因为没搞清楚状况就翻车&#xf…

Qt 5.15.11 源码windows编译

1.下载qt5.15.11源码 https://download.qt.io/official_releases/qt/5.15/5.15.11/single/qt-everywhere-opensource-src-5.15.11.zip 2.解码源码到桌面 3.安装cmake ,python ,perl, Visual Studio 2019 Strawberry Perl for Windows Win flex-bison download | SourceForge…

如何在Windows 10中进行屏幕截图

本文介绍如何在Windows 10中捕获屏幕截图&#xff0c;包括使用键盘组合、使用Snipping Tool、Snipp&Sketch Tool或Windows游戏栏。 使用打印屏幕在Windows 10中捕获屏幕截图 在Windows 10中捕获屏幕截图的最简单方法是按下键盘上的PrtScWindows键盘组合。你将看到屏幕短暂…

ETL数据转换工具类型与适用场景

ETL数据转换工具在企业数据管理中扮演着重要的角色&#xff0c;能够帮助企业从多个数据源中提取、转换和加载数据&#xff0c;实现数据整合和分析。以下是针对Kettle、DataX和ETLCloud这几个工具的详细介绍及其适用场景。 Kettle&#xff08;Pentaho Data Integration&#xf…