标签:config conf 提升 art project version 方法 防火墙 log
CI/CD持续集成(Continuous Integration,CI)是一种软件开发实践。在持续集成环节中,开发人员每人每天至少集成一次他们的开发成果。每次集成后会经过自动构建(包括静态扫描、安全扫描、自动测试等过程)的检验,以发现开发中的错误。这样做可以加快开发软件的速度和提升开发软件的效率
持续交付(Continuous Delivery)是指持续将开发好的软件新版本交付给质量团队或者用户进行评审,若评审通过了,代码即可进入生产阶段
持续部署(Continuous Deployment)是完成持续交付后的下一步,指的是开发的软件新版本通过评审以后,可以实现自动部署到生产环境中
高并发构建
使用Jenkins+Ansible可以简化配置管理操作,可实现在多台主机上对项目进行自动的部署
准备三台Centos7虚拟机,设置IP地址和hostname,关闭防火墙和selinux,同步时间,修改IP地址和hostname的映射关系
hostname | ip | 部署项目 |
---|---|---|
master | 192.168.29.132 | jenkins |
bak | 192.168.29.138 | 被部署机器 |
gitlab | 192.168.29.140 | GitLab |
详细Jenkins和GitLab部署方法可参考:https://blog.51cto.com/14832653/2501394
部署ansible
部署方法可参考:https://blog.51cto.com/14832653/2500736
部署tomcat
部署方法可参考:https://blog.51cto.com/14832653/2503233
#从官网下载二进制压缩包
#解压
[root@master ~]# tar -zxvf apache-maven-3.6.3-bin.tar.gz
[root@master ~]# mv apache-maven-3.6.3-bin.tar.gz /usr/local/maven
其中index.jsp为tomcat的首页,把其中的nav-home标签改为Home-Jenkins-Test
安装maven插件
配置SSH设置
配置bak机器的SSH公钥,Test查看是否成功连接,能成功连接就保存SSH设置
新建项目
配置项目
配置项目成功构建后使用ansible把项目部署到bak主机上
配置pom.xml文件
#不进行配置会报错
#需要按部署项目的要求自行进行配置
[root@master ~] vi /var/lib/jenkins/workspace/project_maven/pom.xml
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>myTest</groupId>
<artifactId>myTest</artifactId>
<version>1.0.0</version>
<packaging>war</packaging>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<webResources>
<resource>
<directory>/var/lib/jenkins/workspace/project_maven/web</directory>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</build>
</project>
运行项目
查看运行结果
#已成功部署到bak主机上
[root@bak ~]# ls /usr/local/tomcat-7-8888/webapps/
docs examples host-manager manager myTest-1.0.0 myTest-1.0.0.war ROOT
访问项目
Centos7实现基于Jenkins和GitLab的持续集成与部署maven项目
标签:config conf 提升 art project version 方法 防火墙 log
原文地址:https://blog.51cto.com/14832653/2510772