阿里云效搭建github的前端流水线

先构建一个vue项目,新建一个node模板,配置流水线源,按照说明一步步配置就可以了,最好开始webhook

复制webhook地址,添加入github仓库的settings的webhooks中,Content type设置为json

流水线源设置好了之后,我是去掉了测试部分,实际项目可自行修改,

然后是构建部分,构建集群的选择,由于github拉取代码会比较慢,所有选择了香港的集群

然后按照需求选择其他,一般的构建命令

bash 复制代码
npm install
npm run build

打包路径

然后是部署部分,按照需求填写,部署脚本,直接解压缩文件到目标文件夹之后覆盖,会导致目标文件夹越来越大

bash 复制代码
# 备份 /home/my-project/ 目录(可选)
cp -r /home/my-project/ /home/my-project-backups/

# 删除 /home/my-project/ 目录下的所有文件 -mindepth搜索子目录
find /home/my-project/ -mindepth 1 -delete

# 解压缩压缩文件,并将其中的文件覆盖到 /home/my-project/ 目录
tar zxvf /home/admin/package.tgz -C /home/my-project/

# 删除备份的目录(可选)
rm -rf /home/my-project-backups/

在部署和构建阶段也可以添加任务插件来进行通知,

配置好nginx配置就可以访问了

配置node后端服务

配置node后端服务,步骤类似,构建阶段的构建命令就不用build了

bash 复制代码
npm install

部署脚本阶段也类似

bash 复制代码
# 备份 /home/my-project/ 目录(可选)
cp -r /home/my-project/ /home/my-project-backups/

# 删除 /home/my-project/ 目录下的所有文件 -mindepth搜索子目录
find /home/my-project/ -mindepth 1 -delete

# 解压缩压缩文件,并将其中的文件覆盖到 /home/my-project/ 目录
tar zxvf /home/admin/package.tgz -C /home/my-project/

# 删除备份的目录(可选)
rm -rf /home/my-project-backups/

if pm2 list | grep -q "\dmy\d"; then
    pm2 reload my
else
    pm2 start /data/my-project/index.js --name my
    pm2 save
fi

上述命令假定服务器已经安装pm2,同时也运行了开机启动pm2

bash 复制代码
pm2 startup

判断是否开启了名称为my的项目,开启了reload ,没开启开启并且save一下,

由于只有一台服务器,后端服务开启的子域名,添加有一个nginx配置,example.com为子域名,http://127.0.0.1:3000为开启的后端服务端口

bash 复制代码
server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://127.0.0.1:3000;
    }
}
相关推荐
劲爽小猴头3 分钟前
HTML5快速入门-表单&实用标签
前端·html·html5
蓝胖子的多啦A梦20 分钟前
Vue+css实现扫描动画效果(使用@keyframes scan)
前端·css·vue.js·keyframes scan
沐土Arvin36 分钟前
Web 安全进阶:前端信封加解密技术详解
前端·javascript·安全·设计模式
码上敲享录1 小时前
前端如何播放flv视频
前端·音视频
shenyan~1 小时前
关于 Web 安全:4. 中间件 & 框架风险点分析
前端·安全·中间件
wwf12251 小时前
css 里面写if else 条件判断
前端·css
Magnum Lehar2 小时前
vulkan游戏引擎的renderer下的vulkan缓冲区实现
java·前端·游戏引擎
_CodePencil_2 小时前
CSS专题之flex: 1常见问题
前端·css·html·css3·html5
哎呦你好2 小时前
CSS 文字样式全解析:从基础排版到视觉层次设计
前端·css
哎呦你好2 小时前
CSS 链接样式全解析:从基础状态到高级交互效果
前端·css