【问题标题】:Multiple instance application in dockerdocker中的多实例应用程序
【发布时间】:2016-09-28 19:21:21
【问题描述】:
我有一个应该在 Ubuntu 操作系统中多次运行的服务器应用程序,我想使用 docker。
获得更好性能的最佳方案是什么?
1- 使用 docker 和 Ubuntu 映像在单个容器中运行所有实例
或
2- 在单独的容器中运行每个应用的单个实例
选项 2 似乎更适合我的解决方案,但我想知道在这种情况下浪费了多少系统资源,并且每次都加载 Ubuntu?
【问题讨论】:
标签:
docker
docker-compose
dockerfile
docker-machine
【解决方案1】:
您应该真正为每个实例使用一个容器,因为只有这样您才能单独扩展、运行和管理它们。没有那个 docker 就没有意义,VM 就不会如此不同。
如果您的应用程序在多次使用时不会使用更多资源,则性能不会明显下降。
Docker 容器本身就很便宜。它们共享内核并使用 Copy on Write,因此它们不需要比单个容器更多的空间。
使用 100 个 Ubuntu 容器自行测试:
docker service create --name test ubuntu sleep 9999
docker service scale test=100
稍等
docker service ls
你看它几乎不需要资源