如何使用Jenkins部署多个SpringBoot环境?

时间:2016-06-22 12:29:41

标签: tomcat jenkins gradle spring-boot

关注this question我已经创建了我的Jenkins构建版本,我使用gradle从spring boot启动tomcat服务器。

我想要实现的是为不同的环境(例如生产,用户验收测试,开发)提供不同的构建。为此,我创建了多个jenkins构建:一个用于开发,一个用于本例的uat。正在从项目创建war文件,然后运行此命令以启动新服务器:echo "fuser -k 8090/tcp ; java -jar '/var/lib/jenkins/jobs/VCrawl UAT Build/workspace/build/libs/vcrawl-0.0.1-SNAPSHOT.war' --spring.profiles.active=uat" | at now

问题是当一个构建完成并且shell正在执行此命令时,另一个服务器会停止以启动此命令。我的预感是Jenkins只能使用一个shell终端,因此当我运行一个时,另一个shell将停止运行,因此停止另一个服务器。

如果我从运行Jenkins的机器启动服务器没有问题,两台服务器都可以运行。

另外,我想指定环境在不同的端口上运行,使用单独的数据库等等。

如何从Jenkins创建两个同时运行的tomcat服务器?

1 个答案:

答案 0 :(得分:1)

如果将spring boot war-file作为服务运行,则在执行命令时不会被杀死。

看看here