自学内容网 自学内容网

nodejs前端项目的CI/CD实现(四)前端项目的CD持续部署

一、说在前面的话

相信经过前面的几篇文章,你已了解如何构建并部署一个前端项目。

本文将以一个示例,给你一个直观的部署过程。

二、准备工作

由于我们使用的rsync工具,选择的是ssh部署方式,所以需要你把jenkins容器的公钥添加到目标机的授信列表。

没有授权,执行rsync时会报错:

Host key verification failed.
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(228) [sender=3.2.3]
Build step 'Execute shell' marked build as failure
ssh-keygen -t rsa

# 一直输入回车键即可,最后生成在目录~/.ssh

cat ~/.ssh/id_rsa.pub

在目标机上,添加jenkins容器的公钥:

vi  ~/.ssh/authorized_keys

三、rsync工具

rsync有两种常用的认证方式,一种是rsync-daemon方式,另一种是ssh方式。
我们使用的是ssh方式来认证,上文的准备工作就是这样。

这里也不打算详细讲解工具怎么使用,参数该如何传值等等。

这里就一笔带过了。。

四、jenkins job

在这里插入图片描述

npm config set registry http://192.168.50.68:8081/repository/npm-xx-public/

npm config set cache /var/jenkins_home/yarn-cache

npm install --force

npm run build --verbose

rsync -av --delete ./dist/ root@192.168.50.15:/axxhcnk/xxweb/jds-jsr-web

目标机,发送完成:

在这里插入图片描述

五、总结

前端项目的打包部署就讲到这里了,编译到dist目录,然后发送到目标机。

不同的语言或项目,差别最大的就是编译了。

本系列文章,其实重点也是在CI上,CD比较简单。

其实还有重要的IM模块未涉及,后面有空再写。

另外,为什么会有本系列文章,也是因交接工作太简单,文档只有机器的密码。。

希望大家多写一些文档,少挖坑。(最近比较流行防御性编程,通过本系列文章,你可以看到运维也有防御性运维)


原文地址:https://blog.csdn.net/zhuganlai168/article/details/135699034

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!