Spring引导应用程序需要dockerization吗?

时间:2016-09-04 03:21:05

标签: java docker spring-boot continuous-deployment

有关Spring启动应用程序的任何建议都需要停靠?

使用Docker化增加部署时间?

a. Spring boot app with docker then has to go with building image -> pushing to docker registry -> then pull from docker registry and at last running it.
b. whole process takes time and Continuos deployment is taking now time.

由于spring boot引入了嵌入式tomcat,不建议将可执行jar文件作为java -jar运行,你只需要在可部署主机上使用JRE吗?

让我知道你对此的想法..

1 个答案:

答案 0 :(得分:2)

您的帖子包含几个问题,对我来说并不是很清楚。我基本上回答标题问题:

  

春季启动应用需要停靠吗?

是的,它确实有意义。您的Spring Boot应用程序仍然在一个操作系统上运行,安装了一些补丁,可能还有一个数据库,一个JRE,打开的端口以及一些需要配置的其他东西。

然后,由于x原因,您在LAB中的设置可能与Qualification或Production 中的设置不同:不是相同的操作系统,不是相同的主目录,环境变量,打开的端口,某些命令没有在环境x中工作,其他命令只适用于y ...

至少,Dockerizing Spring Boot应用程序允许您在所有环境中使用相同的配置运行。如果开发人员能够在与发生错误的位置完全相同的环境中运行,那么技术上更容易重现错误

有趣的文章:how-to-deploy-spring-boot-applications-in-docker-containers

  

尽管Spring Boot简化了很多东西,但实际情况还是如此   部署微服务应用程序仍然很复杂。如果你包装它   RPM,你可能仍然需要处理依赖版本问题,   冲突的端口等。这是不可变基础设施的来源   发挥作用。

查看另一篇文章:https://dzone.com/articles/dockerizing-spring-boot-applications

  

几个月前,我开始了一个名为JVM的新个人项目   博主的目标是帮助波兰程序员传播新闻   关于他们的新博文。最初这个Spring Boot应用程序是   托管在我的本地计算机上,然后我将其迁移到免费帐户   Heroku的。

     

在最初几周,我很满意:申请不一定是   在线24/7每天睡8个小时(限制免费Heroku   帐户)不是一个大问题,500 MB内存上限也没限制我。   但随着JVM Bloggers的成长,我开始遇到奇怪的问题   内存使用情况:应用程序开始耗费500-550MB而且非常   很难找到这种行为的来源。我甚至离开了申请   在我的本地机器上运行,但附加了一个分析器,但仍然没有   发现任何可疑的东西。

     

因为我不得不监视,内存占用问题变得很烦人   申请并每1-2天重新启动一次,由于Heroku性质我   不能简单地ssh到服务器并调试或附加分析器   运行过程。很明显,如果我要添加更多   JVM Bloggers的功能我必须将其迁移到更多内容   灵活 - 一台带Docker的Linux机器。