Vue3.0+TS

Vue3+TS Day44 - 自动化部署、Jenkins、CI

2022-03-14  本文已影响0人  望穿秋水小作坊

一、基础认知

1、在没有自动化部署方案时,程序员、测试人员、运维人员之间是如何协调工作的?

2、CI的全称是什么?

image.png

3、CD的全称是什么?

image.png

4、自动化部署流程图(后续要能手绘出来)?

image.png

二、购买阿里云服务器实例

1、如何选择付费方式和镜像系统?

2、安全组配置?

3、最好给服务器实例配置一个root自定义密码,方便后续远程登陆

image.png

4、完成实例购买与创建后,可以在本地terminal(命令行)中远程连接,出现下面提示即可。

image.png

三、为实例配置Nginx,并能展示自定义index.html

1、为了后续更加方便,我们安装第三方包管理工具 dnf

2、安装nginx

3、启动nginx,并配置nginx服务开机启动

systemctl start nginx
systemctl status nginx
systemctl enable nginx

4、通过公网ip访问服务器,如果看到如下图即代表nginx安装并运行成功

image.png

5、修改nginx的默认index.html文件以及所在目录(修改配置,推荐使用vscode插件remote shh)

image.png
mkdir /root/mall_cms
cd /root/mall_cms
touch index.html

vi index.html
image.png image.png

6、通过公网ip访问服务器,如果看到如下图即修改配置成功

image.png

四、我们需要一个git仓库

1、找一个git仓库,比如GitHub、gitlab、coding.net

2、将代码进行上传到远程git仓库

image.png

3、阿里云实例需要执行git clone,所以需要安装git

dnf install git

五、为阿里云服务器实例安装Jenkins以及java环境

1、安装java环境

-因为 Jenkins 是一款由Java编写的开源的持续集成工具,所以需要Java环境。

dnf search java-1.8
dnf install java-1.8.0-openjdk.x86_64

2、安装 Jenkins

wget –O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo

#有时候会下载到 ~ 目录下,要进行手动移动
mv jenkins.repo /etc/yum.repos.d/

# 导入GPG密钥以确保您的软件合法
rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key
# 或者
rpm --import http://pkg.jenkins-ci.org/redhat/jenkins-ci.org.key
[jenkins]

name=Jenkins-stable

baseurl=http://pkg.jenkins.io/redhat

gpgcheck=1
dnf install jenkins # --nogpgcheck(可以不加)
systemctl start jenkins
systemctl status jenkins
systemctl enable jenkins
image.png

3、Jenkins 用户

image.png
systemctl restart jenkins

4、Jenkins 配置

image.png

5、由于vue项目依赖于node环境,所以需要为Jenkins配置nodejs环境

image.png image.png
systemctl restart jenkins
image.png image.png

6、Jenkins 任务【核心步骤】

image.png image.png image.png
#每半小时构建一次OR每半小时检查一次远程代码分支,有更新则构建
H/30 * * * *

#每两小时构建一次OR每两小时检查一次远程代码分支,有更新则构建
H H/2 * * *

#每天凌晨两点定时构建
H 2 * * *

#每月15号执行构建
H H 15 * *

#工作日,上午9点整执行
H 9 * * 1-5

#每周1,3,5,从8:30开始,截止19:30,每4小时30分构建一次
H/30 8-20/4 * * 1,3,5
image.png image.png image.png
# 打印一下当前执行shell脚本的用户信息
id
pwd
node -v
npm -v

npm install 
npm run build

pwd

echo '构建成功'

ls

# 删除/root/mall_cms文件夹里所有的内容
rm -rf /root/mall_cms/* 

cp -rf ./build/* /root/mall_cms/
image.png image.png image.png

六、补充特别重要的关于Linux权限的知识【超级重要】

1、分别说【rwx】对【文件】或【目录】的意义?【超级重要】

image.png image.png
上一篇下一篇

猜你喜欢

热点阅读