最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

docker自定義網(wǎng)絡(luò)從入門到實(shí)踐

 更新時間:2025年10月29日 09:13:14   作者:驚訝的貓  
Docker 網(wǎng)絡(luò)模式?jīng)Q定了容器之間、容器與宿主機(jī)之間的通信方式,掌握網(wǎng)絡(luò)機(jī)制是理解容器互聯(lián)互通的關(guān)鍵,本文給大家介紹docker自定義網(wǎng)絡(luò)從入門到實(shí)踐,感興趣的朋友跟隨小編一起看看吧

Docker 網(wǎng)絡(luò)模式?jīng)Q定了容器之間、容器與宿主機(jī)之間的通信方式。掌握網(wǎng)絡(luò)機(jī)制是理解容器互聯(lián)互通的關(guān)鍵。

一、Docker 網(wǎng)絡(luò)的核心模式

Docker 有三種核心網(wǎng)絡(luò)模式,決定了容器的通信方式:

橋接模式(默認(rèn) docker0 網(wǎng)絡(luò))

Docker 安裝后會自動創(chuàng)建 docker0 網(wǎng)橋,每個容器啟動時會被分配一個 docker0 網(wǎng)段內(nèi)的 IP(如 172.17.0.x)。 容器間可通過容器 IP + 端口通信,但存在缺陷:容器重啟后 IP 可能變化,且 docker0 不支持容器名直接解析為域名,導(dǎo)致依賴 IP 通信的方式不夠穩(wěn)定。

自定義網(wǎng)絡(luò)

用戶可通過 docker network create 命令創(chuàng)建自定義網(wǎng)絡(luò)(如示例中的 mynet)。 自定義網(wǎng)絡(luò)支持 “容器名 → 域名” 的穩(wěn)定解析,且容器 IP 分配更可控,是生產(chǎn)環(huán)境中容器通信的推薦方式。

宿主模式 / 其他模式(此處暫不展開,重點(diǎn)關(guān)注容器間通信的核心場景)

實(shí)驗(yàn)

目的

我們需要啟動兩個 Nginx 容器(app1 和 app2),讓它們通過容器名互相訪問(而不是依賴 IP)

流程

1、創(chuàng)建自定義網(wǎng)絡(luò)

創(chuàng)建自定義網(wǎng)絡(luò)(默認(rèn)是 bridge 類型,適合容器間通信)

docker network create mynet

可以通過以下命令查看網(wǎng)絡(luò)是否創(chuàng)建成功

docker network ls

若輸出中包含 mynet,說明創(chuàng)建成功。

2、啟動兩個 Nginx 容器并加入 mynet 網(wǎng)絡(luò)

docker run -d \
  -p 80:80 \
  --name app1 \
  --network mynet \
  nginx
?
docker run -d \
  -p 99:80 \
  --name app2 \
  --network mynet \
  nginx
?
-p 80:80:宿主機(jī)訪問 http://localhost:80 會轉(zhuǎn)發(fā)到 app1 的 80 端口(Nginx 默認(rèn)端口)。
-p 99:80:宿主機(jī)訪問 http://localhost:99 會轉(zhuǎn)發(fā)到 app2 的 80 端口。
--network mynet:關(guān)鍵參數(shù),讓兩個容器加入同一個自定義網(wǎng)絡(luò),實(shí)現(xiàn)互通。

3、驗(yàn)證容器間通過 “容器名” 通信

1、進(jìn)入 app1 容器內(nèi)部:docker exec -it app1 bash

在容器內(nèi)用 curl 訪問 app2(Nginx 默認(rèn)返回歡迎頁):curl http://app2:80

會看到 Nginx 的默認(rèn) HTML 頁面內(nèi)容(說明訪問成功)。

2、同理,進(jìn)入 app2 容器內(nèi)部:docker exec -it app2 bash

訪問 app1:curl http://app1:80

同樣會返回 Nginx 歡迎頁,證明通信雙向有效。

補(bǔ)充

為什么自定義網(wǎng)絡(luò)能實(shí)現(xiàn) “容器名訪問”?

對比 Docker 默認(rèn)的 bridge 網(wǎng)絡(luò)(docker0):默認(rèn)網(wǎng)絡(luò)中,容器間只能通過 IP 訪問,容器名無法被解析(需要手動配置 --link,但該參數(shù)已被淘汰)。

自定義網(wǎng)絡(luò)內(nèi)置了 DNS 解析服務(wù):Docker 會在自定義網(wǎng)絡(luò)中維護(hù)一個 “容器名 → IP” 的映射表,當(dāng)容器啟動、重啟或 IP 變化時,這個表會自動更新,因此無論容器 IP 如何變化,都能通過容器名穩(wěn)定訪問。

查看網(wǎng)絡(luò)詳情

如果想確認(rèn)兩個容器的 IP 和網(wǎng)絡(luò)配置,可以通過 docker network inspect mynet 查看: docker network inspect mynet 在輸出的 Containers 部分,會看到 app1 和 app2 的 IP 地址(例如 172.18.0.2 和 172.18.0.3)

"Containers": {
    "app1": {
        "Name": "app1",
        "IPv4Address": "172.18.0.2/16"
    },
    "app2": {
        "Name": "app2",
        "IPv4Address": "172.18.0.3/16"
    }
}

但在日常開發(fā)中,我們無需關(guān)心這些 IP,因?yàn)?容器名即可作為固定域名使用。

環(huán)境清理(實(shí)驗(yàn)結(jié)束)

docker rm -f $(docker ps -aq)

若還想刪除自定義網(wǎng)絡(luò):

docker network rm mynet

總結(jié)

網(wǎng)絡(luò)類型是否支持容器名訪問IP 是否固定典型用途
默認(rèn)橋接網(wǎng)絡(luò)(docker0)??臨時測試
自定義網(wǎng)絡(luò)(bridge 類型)??(動態(tài)可解析)推薦用于服務(wù)間通信
host / none特殊用途特殊用途性能優(yōu)化或隔離

在實(shí)際項(xiàng)目中,無論是 MySQL + WordPress、Nginx + Redis 還是 前端 + 后端,

都推薦使用 自定義網(wǎng)絡(luò) 來實(shí)現(xiàn)容器間穩(wěn)定通信。

通過容器名互聯(lián),系統(tǒng)的可維護(hù)性與可移植性都顯著提升。

一句話總結(jié):

“自定義網(wǎng)絡(luò)讓容器之間的通信像微服務(wù)一樣靈活穩(wěn)定——名字不變,連接不斷。”

到此這篇關(guān)于docker自定義網(wǎng)絡(luò)的文章就介紹到這了,更多相關(guān)docker自定義網(wǎng)絡(luò)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker部署Redis實(shí)現(xiàn)密碼訪問+數(shù)據(jù)持久化(服務(wù)器版)

    Docker部署Redis實(shí)現(xiàn)密碼訪問+數(shù)據(jù)持久化(服務(wù)器版)

    本文主要介紹了Docker部署Redis實(shí)現(xiàn)密碼訪問+數(shù)據(jù)持久化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-04-04
  • docker-compose部署zk+kafka+storm集群的實(shí)現(xiàn)

    docker-compose部署zk+kafka+storm集群的實(shí)現(xiàn)

    這篇文章主要介紹了docker-compose部署zk+kafka+storm集群,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 如何給Docker配置網(wǎng)絡(luò)代理

    如何給Docker配置網(wǎng)絡(luò)代理

    文章講述了如何為Docker配置代理,包括守護(hù)進(jìn)程dockerd、容器運(yùn)行和構(gòu)建時的代理配置方法,并強(qiáng)調(diào)了不同場景下的適用性
    2024-11-11
  • 詳解如何進(jìn)入、退出docker容器的方法

    詳解如何進(jìn)入、退出docker容器的方法

    這篇文章主要介紹了詳解如何進(jìn)入、退出docker容器的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • docker修改未啟動容器的配置信息操作

    docker修改未啟動容器的配置信息操作

    這篇文章主要介紹了docker修改未啟動容器的配置信息操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • 詳解Docker中VLAN網(wǎng)絡(luò)模式的配置

    詳解Docker中VLAN網(wǎng)絡(luò)模式的配置

    在Docker應(yīng)用到生產(chǎn)環(huán)境的時候包括了原生Bridge NAT模式、LinuxBridge VLAN模式以及利用第三方的網(wǎng)絡(luò)方案這三種,這篇文章給大家詳細(xì)介紹了Docker中VLAN網(wǎng)絡(luò)模式的配置,有需要的朋友們下面來一起看看吧。
    2016-10-10
  • 在docker中開啟sshd操作

    在docker中開啟sshd操作

    這篇文章主要介紹了在docker中開啟sshd操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • docker?registry?私有倉庫的搭建過程

    docker?registry?私有倉庫的搭建過程

    這篇文章主要介紹了docker?registry?私有倉庫,私有倉庫最常用的就是Registry、Harbor兩種,那接下來詳細(xì)介紹如何搭建registry私有倉庫,感興趣的朋友跟隨小編一起看看吧
    2022-01-01
  • CentOS7.2下安裝docker容器教程

    CentOS7.2下安裝docker容器教程

    Docker是一個開源的軟件部署工具,是輕量級的應(yīng)用容器框架,它可以讓創(chuàng)建和管理 CentOS容器變得簡單。容器就像是輕量級的虛擬機(jī),并且可以以毫秒級的速度來啟動或停止。Docker 幫助系統(tǒng)管理員和程序員在容器中開發(fā)應(yīng)用程序,并且可以擴(kuò)展到成千上萬的節(jié)點(diǎn)。
    2018-03-03
  • Docker Compose 常用命令詳解(最新推薦)

    Docker Compose 常用命令詳解(最新推薦)

    Docker Compose 是一個用于定義和運(yùn)行多容器 Docker 應(yīng)用的工具,本文將詳細(xì)介紹 Docker Compose 的常用命令,幫助你高效地管理容器應(yīng)用,感興趣的朋友一起看看吧
    2025-04-04

最新評論

南昌市| 大庆市| 丁青县| 浦北县| 泌阳县| 会东县| 承德市| 金湖县| 武川县| 衢州市| 鄂尔多斯市| 来宾市| 古浪县| 罗定市| 龙胜| 南溪县| 舞钢市| 开封县| 宽甸| 门头沟区| 舟曲县| 梨树县| 台山市| 乐平市| 同心县| 克山县| 新余市| 陆良县| 上高县| 宁武县| 海盐县| 扬州市| 牡丹江市| 临洮县| 塔河县| 滕州市| 吉木萨尔县| 云林县| 山阴县| 连南| 大宁县|