什么是docker的link机制
同一个宿主机上的多个docker容器之间如果想进行通信,可以通过使用容器的ip地址来通信,也可以通过宿主机的ip加上容器暴露出的端口号来通信,前者会导致ip地址的硬编码,不方便迁移,并且容器重启后ip地址会改变,除非使用固定的ip,后者的通信方式比较单一,只能依靠监听在暴露出的端口的进程来进行有限的通信。通过docker的link机制可以通过一个name来和另一个容器通信,link机制方便了容器去发现其它的容器并且可以安全的传递一些连接信息给其它的容器。
示例:
# docker run -d --name db mysql
# docker run -d --name web --link db:webdb httpd
通过--link参数连接到容器db,并为其设置别名webdb。然后在httpd容器中就可以直接使用db或webdb作为连接地址来和mysql通信了。
官网的截图: