配置自动化部署Jenkins和Gitea

配置自动化部署

这里使用的是Jenkins+Gitea

如果不知道怎么安装Jenkins和Gitea可以参考下面文章

https://blog.csdn.net/weixin_46533577/article/details/134644144

我的另一篇文章

介绍

前端

先说下自己的情况,因为自己服务器原因,使用的服务器内存太小只有4g,如果这时候再使用npm run build进行打包时会出现卡死,因为占用内存会比较多所以会很卡,导致访问服务器时卡顿非常严重,比如有些服务无法访问等。

在下面的介绍中,我将使用本地打包的方式,打包完成后在推送到服务器上,如果你的服务器性能出色可以我也将在这里介绍如何在服务器中线上打包。

除此之外线下打包之后推送好处是,节省了服务器的内存消耗,因为打包所以要下载相关的包npm install命令有些包会有好几个G这样,对于普通用户的服务器最大可能就40G-70G这样几个项目就消耗了十几个G。损耗很大。

后端

这里以前端为例,后端还需要下载maven插件

前提简要

在CentOS 7上切换到中文,可以按照以下步骤进行操作:

  1. 安装中文语言支持:打开终端,并使用yum包管理器安装中文语言支持。运行以下命令:

    sudo yum groupinstall "Chinese Support"
    

    这将安装中文语言包和输入法支持。

  2. 配置系统语言:在终端中运行以下命令来配置系统默认语言:

    sudo localectl set-locale LANG=zh_CN.UTF-8
    

    这将将系统的默认语言设置为简体中文。

  3. 重新登录:注销当前用户并重新登录,以使语言设置生效。

下载安装必要插件

下载插件

这里需要下载的插件有:

Blue Ocean
Ant Plugin
Git plugin
GitHub plugin
Generic Webhook Trigger Plugin
Git server Plugin
NodeJS Plugin
Maven Integration plugin

在这里插入图片描述

这几个插件包含了,git的相关推送、前端使用的nodejs、

安装插件

点击搜索插件之后进行安装

在这里插入图片描述

勾选插件之后进行安装,因为我这里都已经安装过了,在这边我只是举例说明下,貌似也找不到想装的插件了,就随便举个例子怎么下载

在这里插入图片描述

在下载时会有些慢,但是没有关系最后会下载好的,有没有疑问?为什么在下载时候就勾选了一个,但是到了下载界面会有很多个?

因为在下载时这些都是捆绑包,所以会很多。

推荐点击下面的安装完成后重启Jenkins,反正都是要重启的

在这里插入图片描述

之后会显示正在重启

在这里插入图片描述

插件升级,在这个板块中可以查询是否有可以升级的插件,有的话可以自行升级

在这里插入图片描述

完成后的样子

在这里插入图片描述

开始搭建

创建Gitea仓库

如果自己知道怎么创建仓库可以跳过这个步骤,说实话这个说起来有点多余。

在这里插入图片描述

之后按照这个步骤创建仓库

在这里插入图片描述

将内容推送到服务器上,因为怕有人恶意攻击,所以把地址栏遮起来了?

在这里插入图片描述

之后推送,如果你想和我一样设置多仓库推送,比如之前就已经存在了但是想再设置一个可以输入以下命令

git remote set-url --add origin 你的地址

之后去Gitea上复制地址

在这里插入图片描述

新建项目

点击新建Item

在这里插入图片描述

输入你的名称,点击第一个根据自己需求来设置,如果你是前端项目点击第一个即可,当然流水线也是可以但是有些麻烦这里就不介绍了。

建议设置成英文,因为后面会设置触发器中文感觉有些不靠谱

在这里插入图片描述

这里举个例子

在这里插入图片描述

点击创建项目后

输入必要的信息

在这里插入图片描述

填写令牌可以自定义,这个用于后面推送触发,如果这里不设置,但是你想要推送时候触发还是要设置,不如在这里直接设置。

名字不建议中文

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

触发器地址,格式内容为下面所显示的。

这里的地址为

在这里插入图片描述

 http://你的服务器地址/generic-webhook-trigger/invoke?token=输入框中的token

举个例子

http://bunny.com:8080/generic-webhook-trigger/invoke?token=bunnybbs-server

token就是输入框输入的名字

之后选择增加构建步骤

在这里插入图片描述

之后选择这个,根据自己需求来,如果你是Linux就选择这个毕竟比较熟悉Linux命令

在这里插入图片描述

这里建议先删除下,因为很多时候推送,如果存在了会覆盖,但是防止出错建议先删除,根据自己想法和需求操作。

建议每个命令分开写下防止构建之后出错什么的

在这里插入图片描述

操作服务器

查看下Jenkins所在的目录,我的目录在这里,之后进入到你的目录中去。

当然这时候你所想要的目录并不存在!!!

因为我们还没有构建所以看不到自己新建的目录,比如这篇文章所说的bunnybbs-server这个目录。

所以这时候要假想这个目录存在,或者你先构建下让代码拉倒这里这个目录下就会显示了。

比如前端目录会有打包好的dist目录或者是build目录

# 先删除原有目录。这里根据需求来
rm -rf  /www/wwwroot/BunnyBBS/test
# 之后将推送的目录复制到自己需要的目录下
cp -a /root/.jenkins/workspace/bunnybbs-server/dist /www/wwwroot/BunnyBBS/test

在这里插入图片描述

点击保存

在这里插入图片描述

打开 Blue Ocean

当一切设置好后回到首页,点击Blue Ocean

在这里插入图片描述

点击创建的项目

在这里插入图片描述

点击运行,但是你们是第一次创建这个项目所以页面会出现弹窗,反正只要点击运行就行了。

如果不运行的话,后面设置推送无法完成也看不到效果!!!

在这里插入图片描述

等待拉取完成,这时候不妨去设置下web钩子(webhooks)不妨碍当前进程和操作

在这里插入图片描述

完成后的界面

在这里插入图片描述

这时候查看服务器中文件,会发现刚刚构建的文件在这里,点击去查看,已经被推送过来了

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

设置web钩子

点击设置

在这里插入图片描述

添加钩子

在这里插入图片描述
将之前所说的地址复制到这里,规则既是上面所述的规则
在这里插入图片描述

在这里插入图片描述

点击激活钩子即可

在这里插入图片描述

点击这个链接进入

在这里插入图片描述
点击测试推送

在这里插入图片描述

之后就可以了

在这里插入图片描述

在这里插入图片描述

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

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

相关文章

防篡改,Tripwire的快速安装与简洁使用

防篡改Tripwire 一、安装 1.准备(centos7的yum不带tripwire) wget https://mirrors.ustc.edu.cn/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm rpm -ivh epel-release-7-14.noarch.rpm yum -y install tripwire另一个方法 cd /etc/yum.rep…

面向对象的四大特性:封装、抽象、继承、多态

封装(Encapsulation) 封装也叫作信息隐藏或者数据访问保护。类通过暴露有限的访问接口,授权外部仅能通过类提供的方式来访问内部信息或者数据。它需要编程语言提供权限访问控制语法来支持,例如 Java 中的 private、protected、pu…

Linux基础项目开发1:量产工具——输入系统(三)

前言: 前面我们已经实现了显示系统,现在我们来实现输入系统,与显示系统类似,下面让我们一起来对输入系统进行学习搭建吧 目录 一、数据结构抽象 1. 数据本身 2. 设备本身: 3. input_manager.h 二、触摸屏编程 to…

Mysq8l在Centos上安装后忘记root密码如何重新设置

场景 Mysql8在Windows上离线安装时忘记root密码: Mysql8在Windows上离线安装时忘记root密码-CSDN博客 如果是在Windows上忘记密码可以参考上面。 如果在Centos中安装mysql可以参考下面。 CentOS7中安装Mysql8并配置远程连接和修改密码等: CentOS7中…

BEVFormer【人工智能】

BEVFormer 是一篇今年中稿 ECCV 2022 的论文,其中提出了一种纯视觉(camera)感知任务的算法模型,用于实现3D目标检测和地图分割任务。该算法通过提取环视相机(Bird’s Eye View Camera)采集到的图像特征&…

阿里云Windows server2016 安装Docker

阿里云Windows server2016 安装Docker 1 软件环境介绍2 下载更新2.1 windowsR 输入sconfig2.2 下载最新版的安装包,安装并重启2.3 下载并安装更新2.4 以管理员方式运行powershell2.5 将Tls修改成二级2.6 安装NuGet服务2.7 安装docker模块2.7 安装 docker包 32.8 查看…

Reactor模式

Reactor模式有点类似事件驱动模式。在事件驱动模式中,当有事件触发时,事件源会将事件分发到Handler(处理器),由Handler负责事件处理。Reactor模式中的反应器角色类似于事件驱动 模式中的事件分发器(Dispatc…

解析Top-K问题及堆排序算法

Top-K问题是在海量数据中找到最大或最小的K个元素,它在实际应用中非常常见,例如专业前10名、世界500强、富豪榜、游戏中前100的活跃玩家等。在面对大规模数据时,直接对数据进行排序可能效率低下,因为排序的时间复杂度通常为O(n lo…

lxd提权

lxd/lxc提权 漏洞介绍 lxd是一个root进程,它可以负责执行任意用户的lxd,unix套接字写入访问操作。而且在一些情况下,lxd不会调用它的用户权限进行检查和匹配 原理可以理解为用用户创建一个容器,再用容器挂载宿主机磁盘&#xf…

ZooKeeper的分布式锁---客户端命令行测试(实操课程)

本系列是zookeeper相关的实操课程,课程测试环环相扣,请按照顺序阅读测试来学习zookeeper。阅读本文之前,请先阅读----​​​​​​zookeeper 单机伪集群搭建简单记录(实操课程系列)。 阅读本文之前,请先阅读…

在macOS上使用Homebrew安装PHP的完整指南

安装最新版本的PHP 步骤1: 安装Homebrew 在安装最新版本的PHP之前,确保你的macOS系统上已经安装了Homebrew。如果尚未安装,打开终端并运行以下命令: /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install…

线性表——(2)线性表的顺序存储及其运算的实现

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 看到美好,感受美好&a…

GDPU 数据结构 天码行空12

文章目录 数据结构实验十二 图的遍历及应用一、【实验目的】二、【实验内容】三、实验源代码🍻 CPP🍻 C 数据结构实验十二 图的遍历及应用 一、【实验目的】 1、 理解图的存储结构与基本操作; 2、熟悉图的深度度优先遍历和广度优先遍历算法…

WEB渗透—反序列化(九)

Web渗透—反序列化 课程学习分享(课程非本人制作,仅提供学习分享) 靶场下载地址:GitHub - mcc0624/php_ser_Class: php反序列化靶场课程,基于课程制作的靶场 课程地址:PHP反序列化漏洞学习_哔哩哔_…

centos7内核升级(k8s基础篇)

1.查看系统内核版本信息 uname -r 2.升级内核 2.1更新yum源仓库 yum -y update更新完成后,启用 ELRepo 仓库并安装ELRepo仓库的yum源 ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行…

Vue.set的实现原理

给对象和数组本身都增加了dep属性当给对象新增不存在的属性则触发对象依赖的watcher去更新当修改数组索引时,我们调用数组本身的splice去更新数组(数组的响应式原理就是重新了splice等方法,调用splice就会触发视图更新) 以下方法调…

mysql的外键

MySQL 中的外键是一种关系型数据库特性,用于在两个表之间建立关联。外键定义了一个表中的列(或多列)与另一个表中的数据的关系,通常是通过主键和外键之间的关联。在 Django 的模型中,外键通过 models.ForeignKey 字段来…

企业计算机服务器中了mallox勒索病毒如何解密,mallox勒索病毒文件恢复

随着网络技术的不断发展,网络安全威胁也在不断增加,勒索病毒攻击企业计算机服务器的事件时有发生,并且勒索病毒的加密形式也越来越复杂。近期,云天数据恢复中心陆续接到很多企业的求助,企业的计算机服务器遭到了mallox…

单片机----串行通信

目录 串行通信的两种方式 串行通信的传输模式 串行通信的错误校验 1.奇偶校验 2.代码和校验 3.循环冗余码校验 串行口结构 串行口控制寄存器SCON 特殊功能寄存器PCON 串行口的4种工作方式 方式0: (1)方式0的发送过程 &#xff0…

QString

目录 1 toInt() (1)qt_strtoll() (2) qstrtoll() (3)bytearrayToLongLong() (4)toIntegral_helper 1 toInt() 下面是toInt()函数的内部实现源码 QStri…