项目打包流程

1. 安装 Jenkins

安装Jenkins

dnf install jenkins # --nogpgcheck(可以不加)

启动Jenkins的服务:

systemctl start jenkins
systemctl status jenkins
systemctl enable jenkins

Jenkins默认使用8080端口提供服务新建任务:

配置项目和保留策略:

源码管理:

构建触发器:

这里的触发器规则是这样的:

#每半小时构建一次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

构建环境:

注意:我们需要搭建Node的环境

第一步:配置Node的环境

第二步:安装Node的插件

构建执行的任务:

pwd
node -v
npm -v

npm install 
npm run build

pwd

echo '构建成功'

ls

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

cp -rf ./dist/* /root/mall_cms/

3.2. nginx安装和配置

3.2.1. 安装nginx

后续我们部署会使用nginx,所以需要先安装一下nginx:

dnf install nginx

启动nginx:

systemctl start nginx
systemctl status nginx
systemctl enable nginx

3.2.2. 配置nginx

我们这里主要配置nginx的用户和默认访问目录:

配置用户:

通过Linux命令创建文件夹和文件:

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

vi index.html

配置访问目录:

补充

补充:现代 CI/CD 流水线范式(Jenkins / GitHub Actions / GitLab CI 都适用):

  1. 触发:push / PR / tag → 触发 webhook → 启动 pipeline。
  2. 环境准备:Node / Java / Docker 镜像准备;缓存 node_modules、~/.npm、~/.m2。
  3. 质量门禁(并行):npm run lint、npm run test、npm run typecheck。
  4. 构建(仅 main / tag 触发):npm run build → 产物落到 dist/。
  5. 镜像打包(服务端部署时):docker build -t app:${CI_COMMIT_SHA} . → push 到镜像仓库。
  6. 部署:金丝雀 / 蓝绿 / 滚动发布,配合健康检查;前端可走 CDN(OSS / S3 / 七牛)+ purge 接口。
  7. 通知:失败时飞书 / 钉钉 / 邮件。 关键实践:① 全部步骤幂等;② 关键步骤加 cache;③ secret 用 CI 平台变量管理;④ main / tag 触发才部署生产。

来源整理自:我的有道云笔记