在Azure VM中重新启动后,Docker容器会变慢

时间:2015-01-24 13:41:27

标签: mysql wordpress ubuntu azure docker

我遇到了码头工人的一些奇怪之处。 我有一个在Windows Azure中运行的Ubuntu服务器VM。 如果我启动一个新的docker容器,例如像这样的Wordpress:

sudo docker run --name some-wordpress --link some-mysql:mysql -p 80:80 -d wordpress

一切都很顺利,考虑到低端虚拟机设置,我得到了一个合理的网站。

但是,如果我重新启动VM,并启动容器:

 sudo docker start some-mysql
 sudo docker start some-wordpress

整个过程非常缓慢,单个页面的响应时间可达2-4秒。

删除容器并启动新容器会使一切正常运行。

导致这种情况的原因是什么?

2 个答案:

答案 0 :(得分:2)

我怀疑它与磁盘使用有关,MySQL容器是否使用本地磁盘进行存储?重新启动现有docker容器时,可以重用现有卷,通常存储在/ var / lib / docker的子文件夹中,而新容器会创建新卷。

我发现一些搜索结果表明Linux上的Linux无法处理" soft"重新启动很好,那些东西没有按照它应该重新连接。 A"硬"据说重启可以解决这个问题。

不确定是否有帮助,我的Docker体验全部来自AWS。

答案 1 :(得分:1)

您的容器正在磁盘上运行,该磁盘存储在每个磁盘max. 500 IOPS的blob存储中。您可以避免命中磁盘(对MySQL来说不太现实)或添加更多磁盘以用于条带化(RAID0)或使用SSD(Azure中的D系列)并且根据您的使用情况,您可能还完全重新定义Docker使用临时存储(/ dev / sdb) - 这里是how for CoreOS。顺便说一下,azure.com中有一些MySQL性能(非Docker)建议。