使用阿里云效在自己的服务器上搭建一个CI/CD,优化开发体验

620 阅读2分钟

使用阿里云效在自己的服务器上搭建一个CI/CD

CI/CD就是在代码更改后可以自动集成以及部署,在开发阶段时就及时发现合并代码后的一些冲突,然后在push代码后自动监测代码变化,然后自动构建、部署到服务器上。

这样在自己的电脑上更改代码后,只需要push代码,甚至不需要build打包,在服务器上就能自行打包部署,非常巴适的开发体验

image-20230711170423266.png

步骤

1. 首先设置流水线源,也就是代码源,然后通过设置代码提交后触发即可在代码push后自动部署到平台

image-20230710112216611.png 然后在git仓库上设置Webhook,也就是每次push时通知流水线要更新了。PS:Webhook的设置中要把通知类型改成json,否则是不会触发流水线的 image-20230710105622856.png

2. 构建,也就是拉去代码后执行npm install 以及npm run build,打包。然后配置构建物上传,也就是把打包后的文件用压缩上传到部署服务器

image-20230710112637398.png 部署脚本如下
  # 打包构建
    # 防止部署 log 中文乱码
    git config --global core.quotepath false 
    rm -rf package-lock.json
    echo "git pull"
    git pull 

    # 查看最近一次提交 log,了解当前部署的是哪个版本
    echo "git log -1"
    git log -1 

    # 重新安装依赖
    npm install

    # 打包构建
    npm run build
    
    echo '部署完成'

3. 部署到服务器,将打包后的构建物下载,选择下载路径,然后执行shell脚本

image-20230710112808559.png 部署脚本如下,对应的文件夹地址要改成自己的哈
    #删除原dist文件
    rm -rf /www/wwwroot/www.newhao2021.top.com
    #重新创建dist文件
    mkdir /www/wwwroot/www.newhao2021.top.com
    #解压构建的dist压缩包到指定目录
    tar zxvf /www/wwwroot/newhao_dev/vue-newhao2021.com.tgz -C /www/wwwroot/www.newhao2021.top.com
    #删除dist压缩包
    rm -rf /www/wwwroot/newhao_dev/vue-newhao2021.com.tgz

此时,只要在开发代码时push提交了代码到git,流水线就会检测到然后自动执行部署到服务器。