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)!