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

目录

一、理论

1.spring项目自动构建

[2.阿里云云效 Maven](#2.阿里云云效 Maven)

3.Maven安装

4.Go安装

5.NPM安装

二、实验

[1.GitLabCI 运行Maven项目](#1.GitLabCI 运行Maven项目)

[2.GitLabCI 运行Go项目](#2.GitLabCI 运行Go项目)

[3.GitLabCI 运行NPM项目](#3.GitLabCI 运行NPM项目)

三、问题

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

2.NPM下载如何指定

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

4.Node.js和NPM的关系


一、理论

1.spring项目自动构建

(1)地址

Spring Initializr

(2)根据需求选择

2.阿里云云效 Maven

(1)地址

仓库服务 (aliyun.com)

(2)概念

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

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

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

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

​

(3)仓库名称及地址

3.Maven安装

(1)CentOS环境安装步骤

bash 复制代码
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环境安装步骤

bash 复制代码
 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环境安装步骤

bash 复制代码
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)测试用自定义配置

bash 复制代码
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

bash 复制代码
npm install -g vue-cli

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

bash 复制代码
vue-init webpack vue-demo

(4)运行VUE项目

bash 复制代码
cd vue-demo
npm run dev

2.NPM下载如何指定

(1)指定下载源

bash 复制代码
npm config set registry https://registry.npm.taobao.org

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

(1)第一种方式

bash 复制代码
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct

(2)第二种方式

bash 复制代码
go env -w GO111MODULE=on
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct

4.Node.js和NPM的关系

(1)NPM

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

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

(2)Node.js

bash 复制代码
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运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。
相关推荐
无奈笑天下12 小时前
麒麟V10SP1虚拟机安装vmtool-参考教程
linux·运维·服务器·个人开发
Trouvaille ~12 小时前
【C++篇】让错误被温柔对待(下):异常高级特性与最佳实践
运维·开发语言·c++·异常·raii·编程实践·基础入门
霜!!12 小时前
openssh升级
linux·运维·服务器
草莓熊Lotso12 小时前
2025年12月远程协作平台全景评测:智能连接时代的效率革命
运维·服务器·数据库
Rhys..12 小时前
Jenkins配置GitHub token教程
运维·github·jenkins·ci
小趴菜不能喝12 小时前
Docker Swarm
运维·docker·容器
阿洛学长12 小时前
解决服务器 4000端口占用方案
运维·服务器
stella·13 小时前
服务器割接,我所学习到的内容。
linux·运维·服务器·学习·shell·割接
胡萝卜3.013 小时前
Linux包管理器:高效安装软件的秘诀
linux·运维·服务器·人工智能·linux包管理·yum教程·apt入门
I · T · LUCKYBOOM13 小时前
iptables 防火墙(二)
linux·运维·服务器·网络·安全·centos