我试图了解如何使用docker来对多层应用程序进行dockerize。
我的tomcat应用程序需要mongodb,mysql,redis,solr和rabbitmq。我现在和Docker玩了几个星期。我能够安装和使用mongo / mysql容器。但是我不知道如何使用Docker完全交付应用程序。我有几个问题。
图像应该如何。我应该安装一个已安装所有组件的映像还是单独的映像(例如,一个用于tomcat的映像,一个用于mongo的映像,一个用于mysql的映像),然后在docker外部使用bash脚本启动这些容器。
一次维护多个容器的docker方法是什么。意思是说我有多个容器(例如mongo,mysql,tomcat等)需要一起运行才能运行我的应用程序,是否有任何内置方法来处理此问题,以便一个命令/脚本执行此操作?
假设我对应用程序进行了docker化,我该如何管理需要执行的各种例行任务,例如增量代码部署,数据库补丁等。目前,我们正在使用vagrant,我们也将Fabric和vagrant一起用于各种任务。各种常规事务的fab任务,例如代码部署,数据库刷新,添加卷,启动/停止服务等。docker的工作方式是什么?
如果由于高CPU等导致VM崩溃,则使用Vagrant不会影响主机系统。但是我看到docker正在消耗大量主机资源。我们可以为该容器设置限制吗,比如说该容器等不超过一个cpu内核。
因为我们使用无业游民,所以上面的大多数问题都在这种情况下。从docker开始时,我认为docker是一种可视化技术,可以代替我们庞大的基于Vagrant的基础设施。如果我错了,请纠正我?
我建议你看一下docker-compose:
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句