目前的docker,尚未实现好热备份,一旦退出容器,即便commit到image里再启动那个image,也只不过省了文件状态恢复的时间,却不会省下db启动时分析巨大的数据文件所需的时间。docker
因此有必要,在不退出容器的状况下,设法让人经过访问Docker主机的某个port来访问到容器里面的某个port。目前有两个方法:tcp
sudo iptables -A PREROUTING -t nat -p tcp --dport Docker主机port -j DNAT --to 容器ip:容器port
sudo route -n add 容器ip/32 Docker主机ip
这时Docker主机ip是指docker-machine ip default
的结果。这样一来,能够直接访问容器ip:容器port了。.net
都作过实验,具体的在Docker启动容器时的port公开方式,破除一些含糊的地方code