Docker的坑——Docker不好、不方便的地方

有太多的人一直在说docker的好处,当然,老蔡也肯定,并且拥抱docker,不过在此记录一点不一样的声音,增加一下多样性。

最主要的不便在于难以动态映射端口

老蔡使用docker很大程度上是因为需要水平扩展高系统开销的应用,而想优雅地将水平扩展做到自动化——auto scaling,自动化端口映射就必不可少。

在docker中,启动一个container可以设置-p参数,指定publish的端口,但是多不同状态的容器就需要额外的管理程序来管理映射。

举个栗子,如果是一个IDC需要加入利用docker来运行用户的虚拟主机,需要将域名动态映射到端口,这时,一个虚拟主机的网页从服务器接收请求到运行虚拟主机中的程序的中间,就多了一层管理映射、映射关系的程序,对维护性和性能都有影响。

第二个不方便的地方是与宿主机的link

加入- -link参数后,docker会为container加上hosts记录,不同的container之间互相连接起来也还是比较方便的。

但是,在container和宿主机之间的连接,却只能通过–add-host参数来实现,并且需要把端口暴露在公网,或者局域网,至少不是在宿主机内部。

再举个?,容器中的程序需要连接主机中的数据库,而数据库又不想对外接受访问,那么,问题就来了。

不过,总体来说,docker还是很棒的

使用docker的过程中,很意外的,遇到的挫折很少,这在使用linux下的软件的时候是很少见的。

docker爆炸性增长的社区会带着docker不断完善和进步,在未来,docker会变得更棒。