docker服务器的最佳做法,多层或单层?

我想build立一个dockernetworking服务器,为多个网站提供Nginx,PHP和MySQL服务。

为每个组件运行一个Docker容器会更好吗,比如一个用于MySQL,一个用于Nginx,一个用于PHP,另一个用于我的站点数据。

或运行多个容器,每个包含所有服务(MySQL,PHP,Nginx和站点数据)在一起,每个Web应用程序一个?

还是只有一个与所有的服务,另一个与网站数据?

我主要关心的是数据备份和高效使用硬件。

通常我们认为Container是stream程。 一个过程是一项工作。

所以build议尽可能简化容器。 为每个服务设置容器

正如宝马提到的,简化容器是Docker推荐的。 容器应该是轻便的,便携式的微型服务。 使用Docker cli -link函数来连接每个服务是很容易的。

Tutum有一个分离LAMP堆栈的例子。 Web服务器与PHP代码位于同一个容器中,但这应该足够了。 我不明白为什么movine Nginx需要不同的容器,除非你打算进行负载均衡。

以下是来自Tutum的示例: https : //github.com/tutumcloud/lamp