我和多克之间有点奇怪。我有一个运行在Windows Azure中的Ubuntu服务器VM。如果我像这样为Wordpress启动一个新的docker容器:
sudo docker run --name some-wordpress --link some-mysql:mysql -p 80:80 -d wordpress
一切都运行得很好,考虑到低端的虚拟机设置,我得到了一个合理的快速站点。
但是,如果我重新启动虚拟机,并启动容器:
sudo docker start some-mysql
sudo docker start some-wordpress整个程序运行非常慢,单个页面的响应时间长达2-4秒。
移除容器并启动新的容器可以让一切重新正常运行。
是什么导致了这种情况?
发布于 2015-01-26 00:19:55
我怀疑这与磁盘使用有关,MySQL容器是否使用本地磁盘进行存储?当您重新启动现有的docker容器时,您将重用现有的卷,该卷通常存储在/var/lib/docker的子文件夹中,而新的容器会创建一个新的卷。
我发现一些搜索结果表明,Azure上的Linux没有很好地处理“软”重启,而且这些东西没有像它应该的那样重新连接。一次“硬”的重启应该可以解决这个问题。
不确定它是否有帮助,我的Docker体验都来自AWS。
发布于 2015-02-11 15:04:43
您的容器在一个磁盘上运行,该磁盘存储在blob存储中,每个磁盘有一个max. 500 IOPS。您可以避免命中磁盘(使用MySQL不太现实),或者添加更多磁盘以使用条带化(RAID0)或使用固态硬盘(Azure中的D系列),根据您的使用情况,您还可以完全重新设置Docker的基础以使用临时存储(/dev/sdb) -这里是how for CoreOS。顺便说一句,azure.com中有一些MySQL性能(非Docker)的建议。
https://stackoverflow.com/questions/28126099
复制相似问题