2016-02-26 711 views
0

假设我在同一个常见Docker镜像上安装了Web服务器和数据库服务器,是否可以同时运行它们,就好像它们在同一虚拟机内运行一样?在单个Docker镜像上同时运行多个应用程序

是否运行docker run <args>两倍这个用例的最佳实践?

+3

[我可以在Docker容器中运行多个程序吗?](http://stackoverflow.com/questions/19948149/can-i-run-multiple-programs-in-a-docker-container) – user2566987

回答

3

您不应该为您的Web服务器和数据库使用单个映像。您应该为Web服务器使用一个映像,并为数据库使用一个映像。

要运行此操作,您需要运行数据库服务器,然后运行Web服务器并将其链接到数据库服务器。

互联网上有很多例子。我就离开这个位置:https://github.com/saada/docker-compose-php-mysql

0

根据这个堆栈溢出的答案是完全可以做到的是通过一个脚本,它启动这些服务的充电

Can I run multiple programs in a Docker container?

虽然大多数人们只是告诉你微服务一切到不同的容器。在某些情况下,如果您想要部署可能需要运行多个Web应用程序(每个应用程序都与不同系统测试相对应)的云部署,则容器可以在多个进程中进行午餐。

所以,你将有你的孤立的小HSQL DB运行在服务器模式,然后按你的疯狂或springboot应用程序,最后你的系统测试通过MVN ..

如果你把所有三个一容器......然后,它仅仅是选择一个容器中的Jenkins节点运行的问题。既然它包含所有内容而不考虑任何其他容器,并且图像大小不是怪异的......你真的很敏捷。举个例子。

所以你必须看到什么是最适合你的。

像mysql这样的大分贝,你通常可以更好地在隔离的容器上运行它们,作为所有其他码头集装箱的基础平台。使用像hsql这样的dB,您可以轻松地为每个容器提供一个分贝。

相关问题