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

docker容器inspect內(nèi)容NetworkSettings的使用

 更新時間:2026年02月03日 10:09:02   作者:岳來  
文章主要介紹了Docker容器的網(wǎng)絡(luò)設(shè)置,包括默認bridge網(wǎng)絡(luò)和多網(wǎng)絡(luò)連接的配置,詳細解釋了頂層字段(如Bridge、SandboxID、HairpinMode等)以及Networks對象的使用方法,推薦使用Networks對象來獲取容器的網(wǎng)絡(luò)信息,因為它提供了更靈活和全面的配置選項

docker inspectNetworkSettingsNetworkSettings

  • 頂層字段(Legacy / Global):主要適用于默認 bridge 網(wǎng)絡(luò)(即 docker run 未指定 --network 時)。
  • Networks 對象:包含容器連接的每個網(wǎng)絡(luò)的詳細配置(支持多網(wǎng)絡(luò))。

一、示例

$ docker inspect 9045fd6a4335 | jq '.[0].NetworkSettings'
{
  "Bridge": "",
  "SandboxID": "71132bcfbb0f31622aecfd17c7f7d6a257ceaa0dcf935c0edabfabf05df6b4bf",
  "HairpinMode": false,
  "LinkLocalIPv6Address": "",
  "LinkLocalIPv6PrefixLen": 0,
  "Ports": {
    "80/tcp": [
      {
        "HostIp": "0.0.0.0",
        "HostPort": "8080"
      }
    ]
  },
  "SandboxKey": "/var/run/docker/netns/71132bcfbb0f",
  "SecondaryIPAddresses": null,
  "SecondaryIPv6Addresses": null,
  "EndpointID": "a7655a6a25a9c0be70e0e47e1de4bbd81c79ab6c783e51946c67b420d2fabc50",
  "Gateway": "172.17.0.1",
  "GlobalIPv6Address": "",
  "GlobalIPv6PrefixLen": 0,
  "IPAddress": "172.17.0.3",
  "IPPrefixLen": 16,
  "IPv6Gateway": "",
  "MacAddress": "02:42:ac:11:00:03",
  "Networks": {
    "bridge": {
      "IPAMConfig": null,
      "Links": null,
      "Aliases": null,
      "NetworkID": "4b0e8535a09d2bbe8b21abc39dcc03715ad338bde8a94956b7e181f9d7b4b4be",
      "EndpointID": "a7655a6a25a9c0be70e0e47e1de4bbd81c79ab6c783e51946c67b420d2fabc50",
      "Gateway": "172.17.0.1",
      "IPAddress": "172.17.0.3",
      "IPPrefixLen": 16,
      "IPv6Gateway": "",
      "GlobalIPv6Address": "",
      "GlobalIPv6PrefixLen": 0,
      "MacAddress": "02:42:ac:11:00:03",
      "DriverOpts": null,
      "Time": 0,
      "SkipResolver": false
    }
  }
}

二、頂層字段詳解(適用于默認 bridge 網(wǎng)絡(luò))

2.1、Bridge

  • 含義:容器連接的 Linux 網(wǎng)橋設(shè)備名稱(如 docker0)。

典型值:

  • 默認 bridge 網(wǎng)絡(luò):docker0,自社區(qū)17.06 版本之后為空字符串。
  • 其他情況:空字符串 ""

注意:在自定義網(wǎng)絡(luò)或非 bridge 驅(qū)動下通常為空。這個字段僅在使用 bridge 網(wǎng)絡(luò)驅(qū)動時有意義,且主要反映默認 bridge 網(wǎng)絡(luò)的行為。

存儲位置:它是 NetworkSettings 的頂層字段,屬于歷史遺留設(shè)計,現(xiàn)代 Docker 更推薦通過 Networks 對象獲取網(wǎng)絡(luò)信息。

2.2、SandboxID

  • 含義:容器網(wǎng)絡(luò)命名空間(network namespace)的唯一 ID。
  • 用途:Docker 內(nèi)部用于隔離容器網(wǎng)絡(luò)棧。
  • 關(guān)聯(lián):與 SandboxKey 配合使用。
  • 宿主機對應(yīng)文件:/var/run/docker/netns/$SandboxID ,即為SandboxKey

SandboxID 文件使用:

進入容器的網(wǎng)絡(luò)命名空間(調(diào)試用)使用 nsenter 命令:

# 進入網(wǎng)絡(luò)命名空間并執(zhí)行命令
sudo nsenter --net=/var/run/docker/netns/$SANDBOX_ID ip addr
sudo nsenter --net=/var/run/docker/netns/$SANDBOX_ID iptables -L
? 這是調(diào)試容器網(wǎng)絡(luò)問題(如 DNS、路由、iptables 規(guī)則)的最直接方式。

查看命名空間類型

# 查看文件系統(tǒng)類型
stat -f -c %T /var/run/docker/netns/$SANDBOX_ID
# 輸出: nsfs (表示 network namespace filesystem)

示例

$ docker inspect 4e78a7993616 | jq '.[0].NetworkSettings.SandboxID'
"c8d35d6aee1efcd69d835b22476ab5fa3de6c185136570b4fec6c355f4923479"

$ sudo nsenter --net=/var/run/docker/netns/c8d35d6aee1e ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
950: eth0@if951: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:ac:11:00:08 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 172.17.0.8/16 brd 172.17.255.255 scope global eth0
       valid_lft forever preferred_lft forever
       
$ sudo nsenter --net=/var/run/docker/netns/c8d35d6aee1e iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   

# 測試 DNS 解析
$ sudo nsenter --net=/var/run/docker/netns/c8d35d6aee1e cat /etc/resolv.conf
options timeout:2 attempts:3 rotate single-request-reopen
nameserver 10.101.0.1
nameserver 10.101.0.17
nameserver 10.101.0.33

$ stat -f -c %T /var/run/docker/netns/c8d35d6aee1e
UNKNOWN (0x6e736673) 

容器停止后還能找到 SandboxID 文件嗎?

不能。Docker 在容器停止時會自動刪除 /var/run/docker/netns/<SandboxID> 文件。

2.3、HairpinMode

  • 含義:是否啟用 發(fā)夾模式(Hairpin NAT)。
  • 作用:允許容器通過宿主機 IP 訪問自己暴露的端口(例如容器內(nèi) curl http://宿主機IP:8080 能訪問到自己)。

典型值:

  • true:啟用(常見于舊版 Docker 或特定配置)
  • false:禁用(默認)

底層實現(xiàn):通過 iptables 的 hairpin nat 規(guī)則。

2.4、LinkLocalIPv6Address 和 LinkLocalIPv6PrefixLen

  • 含義:容器的 IPv6 鏈路本地地址(類似 IPv4 的 169.254.x.x)。
  • 格式:fe80::/64
  • 用途:僅用于同一鏈路(如同一宿主機)內(nèi)的通信。
  • 注意:Docker 默認禁用 IPv6,故通常為空。更多相關(guān)內(nèi)容查看參考文檔

2.5、Ports

  • 含義:端口映射(Port Binding) 配置,即 -p 或 --publish 參數(shù)的效果。
  • 結(jié)構(gòu):
"80/tcp": [
  {
    "HostIp": "0.0.0.0",
    "HostPort": "8080"
  }
]

字段說明:

  • 80/tcp:容器內(nèi)部監(jiān)聽的協(xié)議/端口
  • HostIp:綁定到宿主機的 IP(0.0.0.0 表示所有接口)
  • HostPort:宿主機暴露的端口

多映射:一個容器端口可映射到多個宿主機端口(數(shù)組形式)。

示例:docker run -p 8080:80 -p 8081:80 nginx → "80/tcp" 數(shù)組有兩個元素。

2.6、SandboxKey

  • 含義:容器網(wǎng)絡(luò)命名空間在宿主機上的文件路徑。
  • 用途:可通過 nsenter 進入該網(wǎng)絡(luò)命名空間調(diào)試:
nsenter --net=/var/run/docker/netns/71132bcfbb0f ip addr

2.7、SecondaryIPAddresses / SecondaryIPv6Addresses

  • 含義:容器的輔助 IP 地址(可手動添加)。
  • 典型值:null(除非顯式配置)
  • 用途:高級網(wǎng)絡(luò)場景(如多 IP 綁定)。

2.8、EndpointID

  • 含義:容器在默認 bridge 網(wǎng)絡(luò)中的端點(endpoint)唯一 ID。
  • 注意:在 Networks 對象中每個網(wǎng)絡(luò)都有自己的 EndpointID。

2.9、Gateway

  • 含義:容器默認網(wǎng)關(guān) IP(通常是 Docker 網(wǎng)橋的 IP)。

典型值:

  • 默認 bridge:172.17.0.1
  • 自定義 bridge:如 172.18.0.1

2.10、IPAddress

  • 含義:容器在默認網(wǎng)絡(luò)中的 IPv4 地址。
  • 注意:僅在默認 bridge 網(wǎng)絡(luò)下有效;自定義網(wǎng)絡(luò)中應(yīng)看 Networks..IPAddress。

2.11、IPPrefixLen

  • 含義:IP 地址的子網(wǎng)掩碼長度(CIDR 表示法)。
  • 示例:16 → 子網(wǎng)掩碼 255.255.0.0,網(wǎng)絡(luò)范圍 172.17.0.0/16

2.12、MacAddress

  • 含義:容器虛擬網(wǎng)卡的 MAC 地址。
  • 生成規(guī)則:Docker 自動生成,通常以 02:42 開頭(避免與物理 MAC 沖突)。

2.13、IPv6 相關(guān)字段(GlobalIPv6Address, GlobalIPv6PrefixLen, IPv6Gateway)

  • 含義:全局 IPv6 地址、前綴長度、網(wǎng)關(guān)。
  • 注意:Docker 默認禁用 IPv6,需在 daemon.json 中啟用。

三、Networks 對象詳解(推薦使用)

容器可連接多個網(wǎng)絡(luò),Networks 是一個 Map,鍵為網(wǎng)絡(luò)名稱(如 “bridge”),值為該網(wǎng)絡(luò)的配置。

3.1、IPAMConfig

  • 含義:IP 地址管理配置(如靜態(tài) IP 指定)。
  • 示例(如果指定了 --ip):
"IPAMConfig": {
  "IPv4Address": "172.18.0.100"
}

3.2、Links

  • 含義:容器鏈接(legacy feature,已廢棄)。
  • 歷史:–link 參數(shù)創(chuàng)建的依賴關(guān)系。

3.3、Aliases

  • 含義:在該網(wǎng)絡(luò)中的DNS 別名。
  • 用途:其他容器可通過別名訪問本容器。
  • 設(shè)置方式:docker run --network-alias myapp …

3.4、NetworkID

  • 含義:Docker 網(wǎng)絡(luò)的唯一 ID(對應(yīng) docker network ls 的 ID)。

3.5、EndpointID

  • 含義:容器在該網(wǎng)絡(luò)中的端點 ID(與頂層 EndpointID 在默認網(wǎng)絡(luò)下相同)。

3.6、Gateway, IPAddress, IPPrefixLen, MacAddress

  • 含義:同頂層字段,但僅針對當(dāng)前網(wǎng)絡(luò)。
  • ? 這是獲取容器 IP 的正確方式(尤其在多網(wǎng)絡(luò)場景)。

3.7、DriverOpts

  • 含義:網(wǎng)絡(luò)驅(qū)動的額外選項(如 host-local IPAM 的參數(shù))。

3.8、Time

  • 含義:內(nèi)部時間戳(通常無實際意義)。

3.9、SkipResolver

  • 含義:是否跳過 Docker 內(nèi)置 DNS 解析器(用于自定義 DNS 場景)。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 解決registry私有倉庫空間清理問題

    解決registry私有倉庫空間清理問題

    Docker Registry因歷史鏡像堆積導(dǎo)致磁盤空間不足,需定期清理,通過執(zhí)行registry_garbage_collect.sh腳本及查看config.yml配置文件,可管理存儲策略,釋放占用空間
    2025-08-08
  • docker-compose基于MySQL8部署項目的實現(xiàn)

    docker-compose基于MySQL8部署項目的實現(xiàn)

    這篇文章主要介紹了docker-compose基于MySQL8部署項目的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 使用docker運行jenkins期間遇到的問題及解決方案

    使用docker運行jenkins期間遇到的問題及解決方案

    文章介紹了在使用Docker運行Jenkins時遇到的一些問題及其解決方法,包括使用jenkins/jenkins鏡像、解決多分支流水項目創(chuàng)建問題、以及解決Docker容器內(nèi)部調(diào)用宿主機Docker權(quán)限問題,感興趣的朋友一起看看吧
    2025-03-03
  • docker安裝jenkins的過程并配置jdk、node和maven

    docker安裝jenkins的過程并配置jdk、node和maven

    本文介紹了如何從拉取Jenkins鏡像開始,通過創(chuàng)建文件夾、準(zhǔn)備JDK、Maven和Node環(huán)境,修改settings.xml支持http協(xié)議,到建立Dockerfile進行Jenkins鏡像的二次打包,同時涉及容器的運行、Jenkins初始化設(shè)置、插件安裝和環(huán)境變量配置等步驟,幫助用戶成功部署并運行Jenkins服務(wù)
    2024-10-10
  • docker在windows創(chuàng)建卷后本地找不到的完美解決方法

    docker在windows創(chuàng)建卷后本地找不到的完美解決方法

    這篇文章主要介紹了docker在windows創(chuàng)建卷后本地找不到的完美解決方法,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-02-02
  • docker?搭建?ElasticSearch過程解析

    docker?搭建?ElasticSearch過程解析

    這篇文章主要介紹了docker搭建ElasticSearch的過程,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,,需要的朋友可以參考下
    2023-08-08
  • Linux下Docker CE使用從包中安裝的方式詳解

    Linux下Docker CE使用從包中安裝的方式詳解

    這篇文章主要為大家詳細介紹了Linux下Docker CE使用從包中安裝的方式,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Docker遠程連接設(shè)置的實現(xiàn)示例

    Docker遠程連接設(shè)置的實現(xiàn)示例

    本文主要介紹了Docker遠程連接設(shè)置的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Docker配置容器位置與小技巧總結(jié)

    Docker配置容器位置與小技巧總結(jié)

    這篇文章主要給大家介紹了關(guān)于Docker配置容器位置與小技巧的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用Docker具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Docker部署Nginx并配置反向代理

    Docker部署Nginx并配置反向代理

    這篇文章介紹了Docker部署Nginx并配置反向代理的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-01-01

最新評論

巴里| 城固县| 田东县| 辽阳市| 茂名市| 黎川县| 九寨沟县| 临汾市| 柘城县| 金溪县| 犍为县| 郑州市| 惠安县| 大连市| 大城县| 乌鲁木齐市| 上饶县| 朝阳区| 黄平县| 抚顺市| 佛坪县| 洮南市| 吴堡县| 翁牛特旗| 阿拉善盟| 隆昌县| 锡林浩特市| 平乡县| 沈丘县| 行唐县| 天台县| 贡觉县| 阿拉善盟| 夏津县| 班戈县| 承德市| 龙泉市| 尉氏县| 项城市| 青海省| 禄丰县|