什么是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通信了。
官網的截圖: