Docker 是一種虛擬化技術,它可以在同一臺物理機器上運行多個相互獨立的應用,每個應用都運行在自己的 Docker 容器內。而 Docker 實際地址是指 Docker 容器中應用運行的實際 IP 地址。
// 在啟動容器時,可以使用 --network 參數指定容器的網絡配置,比如: $ docker run -it --network=my-network my-image /bin/bash // 這里的 my-network 是一個用戶定義的網絡,如果不存在則會自動創建。 // 然后在容器內使用 ifconfig 命令查看網絡配置,可以看到容器的 IP 地址,比如: root@container:/# ifconfig eth0 Link encap:Ethernet HWaddr 02:42:ac:11:00:03 inet addr:172.17.0.3 Bcast:0.0.0.0 Mask:255.255.0.0 inet6 addr: fe80::42:acff:fe11:3/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:6 errors:0 dropped:0 overruns:0 frame:0 TX packets:6 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:540 (540.0 B) TX bytes:508 (508.0 B) // 這里的 inet addr:172.17.0.3 就是容器的實際 IP 地址。
在 Docker 中,容器之間可以通過實際地址進行通信,比如使用 HTTP 請求或者訪問數據庫。而 Docker 在容器中使用虛擬網卡技術實現容器之間的通信,這樣可以避免與宿主機網絡存在沖突的情況。