天天看點

docker主控端通路容器_Docker容器與主控端器通過IP内外通訊

例如一個如下場景,在Docker環境下面運作了一個含有PHP環境的Docker容器(container),容器名稱為php1,同時在主控端(真實機器)上面有一個MySQL伺服器,如何來通過,容器内部的PHP程式來通路外部的MySQL呢?
docker主要端通路容器_Docker容器與主要端器通過IP内外通訊

原理:

當docker服務啟動起來時,主控端器便作為網關的存在與其他Docker容器處在同一個網段内,就像是路由器和各個連接配接終端之間的關系,主控端就類似于路由器。

1、 通過 ifconfig 可以檢視到目前主控端的網卡情況,紅線内就是主機的ip。

docker主要端通路容器_Docker容器與主要端器通過IP内外通訊

2、檢視某個具體的運作起來的容器的内網ip 通過指令 docker inspect php1 來檢視具體的容器ip和網關ip(主控端)。

docker主要端通路容器_Docker容器與主要端器通過IP内外通訊

3、如果要通過容器通路到外部機器,例如我們在程式裡面配置ip為 172.17.0.1 就可以通路到外部機器了。如果外部有web服務,也可以通過指令 docker exec -it php1 /bin/bash 進入容器然後使用 curl 172.17.0.1 檢測是否連接配接通暢。

喜歡本文的話,給個轉發關注吧!