部门想要的效果:开发提交版本到 gitlab 后,通过 jenkins 完成构建打包和服务部署,然后触发自动化测试。 项目架构是采用的微服务架构,有一个 web 和三个客户端。 疑问: 1、开发所谓的打包、构建、部署、发布分别是什么意思? 2、构建打包后,如何把这些安装包自动安装到一个环境去?安装好这些服务和客户端后又如何触发自动化测试(包括 UI 和接口) 3、这一套如何跟 docker 结合使用? 麻烦大佬解下惑,不胜感激!
这一套教下来可要费不少功夫的说
开发所谓的打包、构建、部署、发布分别是什么意思?
第 2 个问题,和第 3 个问题,这个建议还是先百度或者谷歌一下。问题太大了。
好的,谢谢~
1、开发所谓的打包、构建、部署、发布分别是什么意思? 打包和构建:就是编译代码,得到部署包 部署、发布:部署指部署到服务器,发布的话有可能指的是把部署上传到仓库 ,也可以表示部署,这个要看怎么去理解 2、构建打包后,如何把这些安装包自动安装到一个环境去?安装好这些服务和客户端后又如何触发自动化测试(包括 UI 和接口) 打好包后,通过 jenkins 可以把部署包上传到指定服务器某个目录,然后部署成功后,可以自动触发构建其他的测试 job 去触发执行自动化测试脚本 3、这一套如何跟 docker 结合使用? 结合 docker 的话,可以用 docker 搭建 jenkins,要部署的包可以写脚本编译成 docker 镜像 ,以 docekr 的方式去部署
我正好写过一个框架。Docker+Jmeter+Jenkins+Gitlab+Ant+Nginx+Php。https://testerhome.com/topics/21042
谢谢大佬解答~
好的,先马了
其实现在也不太需要 Jenkins 来做持续集成了,gitlab 本身就可以直接做持续集成,并且结合 docker 还挺好用的。写配置文件还比 Jenkins 简单。 首先你这个微服务,是用什么写的,这里用 java 后端和 vue 前端举个例子给你吧: 1、构建:这一步主要是讲代码编译成 jar 包或者 html 文件,可以让服务器去运行 2、打包:这一步如果使用了 docker,可以理解为打包为 docker 镜像 3、部署:使用 docker 运行打包好的镜像,可以是开发环境运行。 4、发布:把 docker 镜像发布到镜像仓库,供运维或者测试使用。
另外这步骤也不是绝对的。比如发布,也可以是 java 程序依赖,发布到 maven 仓库。测试可以在持续集成中间加上单元测试,代码 sonar 扫描,接口测试,安全扫描等步骤。就看你自己怎么安排这个流水线了