持续集成交付CICD:GitLabCI 运行前后端项目

目录

一、理论

1.spring项目自动构建

2.阿里云云效 Maven 

3.Maven安装

4.Go安装

5.NPM安装

二、实验

1.GitLabCI 运行Maven项目

2.GitLabCI 运行Go项目

3.GitLabCI 运行NPM项目

三、问题

1.前端脚手架如何初始化项目

2.NPM下载如何指定

3.Go项目下载源如何指定

4.Node.js和NPM的关系


一、理论

1.spring项目自动构建

(1)地址

Spring Initializr

(2)根据需求选择

2.阿里云云效 Maven 

(1)地址

仓库服务 (aliyun.com)

(2)概念

​
阿里云Maven中央仓库为 阿里云云效 提供的公共代理仓库,帮助研发人员提高研发生产效率,使用阿里云Maven中央仓库作为下载源,速度更快更稳定。

阿里云云效 是企业级一站式 DevOps 平台,覆盖产品从需求到运营的研发全生命周期,其中云效也提供了免费、可靠的Maven私有仓库 Packages 和代码管理仓库 Codeup,欢迎您体验使用。

云效制品仓库 Packages 致力于帮助开发者统一管理各种开发语言在开发、构建过程中的依赖,构建成果(二进制制品)以及交付过程关键信息的重要组件。

云效代码管理 Codeup 是阿里云出品的一款企业级代码管理平台,提供代码托管、代码评审、代码扫描、代码度量等功能,不限人数、超大容量且免费使用,全方位保护代码资产,帮助团队实现安全、稳定、高效的研发管理。

​

(3)仓库名称及地址

3.Maven安装

(1)CentOS环境安装步骤

tar -xf apache-maven-3.8.6-bin.tar.gz #解压
mv apache-maven-3.8.6 /usr/local/maven #移动文件

#配置环境变量
vim /etc/profile
export JAVA_HOME=/usr/java/jdk-11.0.15.1
export MAVEN_HOME=/usr/local/maven
export PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin

#刷新配置
source /etc/profile
mvn -v #查找Maven版本

4.Go安装

(1)CentOS环境安装步骤

 tar zxf go1.16.3.linux-amd64.tar.gz -C /usr/local/    #解压到指定目录
 cd /usr/local/go/

#配置环境变量
[root@zeyang-nuc-service go]# vim /etc/profile
export GOROOT=/usr/local/go
export GOPATH=/opt/godir
export PATH=$GOROOT/bin:$PATH

#刷新配置
source /etc/profile
go version   #查找Go版本

5.NPM安装

(1)CentOS环境安装步骤

wget https://nodejs.org/dist/v14.16.1/node-v14.16.1-linux-x64.tar.xz     
tar xf node-v14.16.1-linux-x64.tar.xz -C /usr/local/   #解压到指定目录

#配置环境变量
vim /etc/profile
export NODE_HOME=/usr/local/node-v14.16.1-linux-x64
export PATH=$NODE_HOME/bin:$PATH

#刷新配置
source /etc/profile
node -v   #查找node版本
# npm -v   #查找npm版本




二、实验

1.GitLabCI 运行Maven项目

(1)安装Maven

(2) 配置环境变量

(3)新建本地仓库目录

(4) 启用本地仓库

(5) 系统默认镜像

(6)修改阿里源

(7)新建项目

(8)重新上传

(9)查看构建目录

(10)重新跑maven-test-master项目

(11)成功

(12)查看本地仓库

(13)target目录下生成jar包

(14)尝试跑代码

(15)测试用自定义配置

mvn test -s settings.xml

(16)GitLab新建一个项目

(17)查看runner

(18)添加runner

(19)修改CI文件并提交

(20)完成

(21)通过

(22)查看pipelineInit日志

(23) cibuild日志

(24)SUCCESS

2.GitLabCI 运行Go项目

(1)安装Go

(2)配置环境变量

(3)查看版本

(4)修改下载源

(5)新建项目

(6) 上传项目代码

(7)上传成功

(8)查看runner

(9) 启动runner

(10)修改CI文件

(11)成功

(12) 查看日志

(13) 制品为二进制代码

3.GitLabCI 运行NPM项目

(1) NPM安装,内置于Node.js

(2) 修改环境变量

(3) 查看版本

(4)新建项目

(5)查看runner

(6) 启动runner

(7) 关闭自动化

(8) 上传项目

(9) 构建成功

(10) Blue Ocean查看

三、问题

1.前端脚手架如何初始化项目

(1)安装VUE

npm install -g vue-cli

(2)前端脚手架初始化项目

vue-init webpack vue-demo

(4)运行VUE项目

cd vue-demo
npm run dev

2.NPM下载如何指定

(1)指定下载源

npm config set registry https://registry.npm.taobao.org

3.Go项目下载源如何指定

(1)第一种方式

go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

(2)第二种方式

go env -w GO111MODULE=on
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

4.Node.js和NPM的关系

(1)NPM

全称是 Node Package Manager 包管理工具。
这一点和maven、gradle十分相似,只不过maven、gradle是用来管理java jar包的,而npm是用来管理js的。

#实现思路
NPM 的实现思路和maven、gradle是一样的:
1)有一个远程代码仓库(registry),在里面存放所有需要被共享的js代码,每个js文件都有自己唯一标识。
2)用户想使用某个js的时候,只需引用对应的标识,js文件会自动下载下来。

(2)Node.js

Node.js是一个Javascript运行环境(runtime environment),不是一个js文件,实质是对Chrome V8引擎进行了封装。Node.js 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP、Python 等服务端语言平起平坐的脚本语言。

1)Node.js提供替代的API,使得V8在非浏览器环境下运行得更好。V8引擎执行Javascript的速度非常快,性能非常好。 

2)Node.js是一个基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。

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

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

相关文章

基于DigiThread的仿真模型调参功能

仿真模型调参是指通过调整模型内部的参数值,使仿真模型的输出更符合实际系统的行为或者预期结果的过程。 仿真过程中,往往需要频繁对模型参数进行调整,通过观察不同参数下系统整体的运行情况,实现系统的性能、可靠性和效率的优化…

UDP通信

UDP通信-快速入门 客户端程序 服务端程序 步骤 UDP通信-多发多收 客户端 服务端 步骤

Sentinel核心类解读:Node

基本介绍 Sentinel中的簇点链路是由一个个的Node组成的,Node是一个接口。Node中保存了对资源的实时数据的统计,Sentinel中的限流或者降级等功能就是通过Node中的数据进行判断的。 Sentinel中是这样描述Node的: Holds real-time statistics…

抑郁症中西医治疗对比?

抑郁症是一种常见的心理障碍,治疗方法包括中医和西医两种。下面就抑郁症中西医治疗进行对比: 治疗方法:中医治疗抑郁症强调整体观念和辨证论治,通过调理身体各部分的功能,达到治疗抑郁症的目的。中医治疗抑郁症多采用天…

YOLOv8创新魔改教程(一)如何进行模块创新

YOLOv8创新魔改教程(一)如何进行模块创新 YOLOv8创新魔改教程 本人研一,最近好多朋友问我要如何修改模型创新模块,就想着不如直接开个专栏歇一歇文章,也算是对自己学习的总结,本专栏以YOLOv8为例&#xf…

FH Admin Shiro反序列化漏洞复现

0x01 产品简介 FH Admin 是一款 java 快速开发平台。 0x02 漏洞概述 FH Admin CMS 存在 shiro 反序列化漏洞,该漏洞源于软件存在硬编码的 shiro-key,攻击者可利用该 key 生成恶意的序列化数据,在服务器上执行任意代码,执行系统命…

HT71778 实时音频信号跟踪同步升压转换器的特性

HT71778是一款高功率、全集成升压转换器,集成16mΩ功率开关管和18mΩ同步整流管,为便携式系统提供G效的小尺寸处理方案。 HT71778 实时音频信号跟踪同步升压转换器的特性: ・实时音频信号跟踪的电源供电 SN 短接地, VIN 2.7~4.5V, VOUT 5…

Leetcode—2661.找出叠涂元素【中等】

2023每日刷题(四十六) Leetcode—2661.找出叠涂元素 题意解读 题目意思就是,按照arr数组从左到右的顺序遍历各个arr[i],涂抹这个值在矩阵中对应位置的网格,一旦你发现它所在的行或者列满员了,就返回这个i…

自定义Vue的DockPanel-Layout

创作来源 1、在vue项目中需要有停靠、浮动、面板布局等需求,如arcgis的界面布局 2、在npm中搜索了关于vue的docklayout组件,搜索后就一个组件imengyu/vue-dock-layout,截图如下,该组件没有停靠组件,没有浮动组件&…

Linux学习——模拟实现mybash小程序

目录 一,跟正宗的bash见个面 二,实现一个山寨的bash 1.提示符 2.输入命令与回显命令 3.解析命令 4.执行命令 5.执行逻辑 三,全部代码 一,跟正宗的bash见个面 在这篇文章中,我会写一个myshell小程序。这个小程序…

Linux中top命令输出日志分析?

以下是对输出的各部分的解释: 09:54:34:系统当前时间。up 161 days, 2:08:系统已经运行了161天2小时8分钟。5 users:有5个用户登录系统。load average: 0.13, 0.08, 0.05:系统的1分钟、5分钟、15分钟的平均负载。负载…

数据结构与算法之美学习笔记:29 | 堆的应用:如何快速获取到Top 10最热门的搜索关键词?

目录 前言堆的应用一:优先级队列堆的应用二:利用堆求 Top K堆的应用三:利用堆求中位数解答开篇内容小结 前言 本节课程思维导图: 搜索引擎的热门搜索排行榜功能你用过吗?搜索引擎每天会接收大量的用户搜索请求&#x…

Opencv制作电子签名(涉及知识点:像素过滤,图片通用resize函数,像素大于某个阈值则赋值为其它的像素值)

import cv2def resize_by_ratio(image, widthNone, heightNone, intercv2.INTER_AREA):img_new_size None(h, w) image.shape[:2] # 获得高度和宽度if width is None and height is None: # 如果输入的宽度和高度都为空return image # 直接返回原图if width is None:h_ratio …

手机上的记事本怎么打开?安卓手机通用的记事本APP

有不少上班族发现,自己想要在电脑上随手记录一些工作文字内容,直接使用电脑上的记事本工具来编辑文字是比较便捷的。但是如果想要在手机上记录文字内容,就找不到手机上的记事本了。那么手机上的记事本怎么打开?安卓手机通用的记事…

MySQL:找回root密码

一、情景描述 我们在日常学习中,经常会忘记自己的虚拟机中MySQL的root密码。 这个时候,我们要想办法重置root密码,从而,解决root登陆问题。 二、解决办法 1、修改my.cnf配置文件并重启MySQL 通过修改配置文件,来跳…

Symbol()和迭代器生成器

目录 1、Symbol() 2、迭代器生成器 执行流程 模拟生成器函数 for of 遍历迭代选择器 yield * Generator函数应用 1、Symbol() Symbol表示独一无二的值 const s1 Symbol(a)const s2 Symbol(a)console.log(s1 s2) // fa…

Elasticsearch 如何处理 Aggs 顺序中的大写字母和小写字母?

Elasticsearch 排序允许你根据特定条件对搜索结果进行排序。 然而,在排序时处理区分大小写时,Elasticsearch 将大写和小写字母视为不同的字符,分别对它们进行排序。 这是因为 ASCII 表顺序是从大写 A 到小写 z。 默认情况下,Elas…

MySQL之性能分析和系统调优

MySQL之性能分析和系统调优 性能分析 查看执行计划 EXPLAIN EXPLAIN作为MySQL的性能分析神器,可以用来分析SQL执行计划,需要理解分析结果可以帮助我们优化SQL explain select … from … [where ...]TABLE 表名 查询的每一行记录都对于着一张表 id 该…

【数据结构】最短路径(Dijskra算法)

一.引例 计算机网络传输的问题: 怎样找到一种最经济的方式,从一台计算机向网上所有其他计算机发送一条消息。 抽象为: 给定带权有向图G(V,E)和源点v,求从v到G中其余各顶点的最短路径。 即&…

优化问题,详解静态优化

优化问题,尤其静态优化问题,在控制系统设计中随处可见,例如基于燃油经济性和驾驶体验的多目标优化的汽车发动机 MAP 标定,基于性能指标优化的飞行器结构设计参数优化,以实验数据与模型输出匹配为目标的电池 RC 等效电路…