創建用戶自定義橋接網絡并連接容器

1.創建用戶自定義的 alpine-net 網絡

[root@host1 ~]# docker network create --driver bridge alpine-net
9f6d634e6bd7327163a9d83023e435da6d61bc6cf04c9d96001d1b64eefe4a71

2.列出 Docker 主機上的網絡

[root@host1 ~]# docker network ls
NETWORK ID     NAME         DRIVER    SCOPE
9f6d634e6bd7   alpine-net   bridge    local
db2f3a6af212   bridge       bridge    local
4251d9be020b   host         host      local
ba96ad98e029   none         null      local

? ? ? ? 查看該網絡的詳細信息

[root@host1 ~]# docker network inspect alpine-net
[{"Name": "alpine-net","Id": "9f6d634e6bd7327163a9d83023e435da6d61bc6cf04c9d96001d1b64eefe4a71","Created": "2025-09-11T23:44:03.139792399+08:00","Scope": "local","Driver": "bridge","EnableIPv4": true,"EnableIPv6": false,"IPAM": {"Driver": "default","Options": {},"Config": [{"Subnet": "172.18.0.0/16","Gateway": "172.18.0.1"}]},"Internal": false,"Attachable": false,"Ingress": false,"ConfigFrom": {"Network": ""},"ConfigOnly": false,"Containers": {},"Options": {},"Labels": {}}
]

3.分別創建 4 個 Alpine 容器(這里我創建的都是一個類型,根據自己的需求創建)

[root@host1 ~]# docker run -dit --name alpine1 --network alpine-net alpine ash
a4fa900ee55e683cf5b1de1d1c4b9d1f4595dba20daa53bbd7ed041c9a2b9ff5
[root@host1 ~]# docker run -dit --name alpine2 --network alpine-net alpine ash
065be7f4fadedbe63bbc2b2e73a408f40876a2fae9609830290ced37bd456bc8
[root@host1 ~]# docker run -dit --name alpine3 --network alpine-net alpine ash
cc049a88659c173e82713a1fa74c13f176e4c1095b64a973dfa8e73abf053557
[root@host1 ~]# docker run -dit --name alpine4 --network alpine-net alpine ash
b2f77131151cd9cb5136b5115c3530f1ba915caccc7f64223ba03ea6d7285877

? ? ? ? 將 alpine4 容器連接到默認橋接網絡

[root@host1 ~]# docker network connect bridge alpine4

? ? ? ? 查看所有正在運行的容器,結果表明容器正常運行

[root@host1 ~]# docker container ls
CONTAINER ID   IMAGE      COMMAND                   CREATED              STATUS              PORTS                                         NAMES
b2f77131151c   alpine     "ash"                     53 seconds ago       Up 53 seconds                                                     alpine4
cc049a88659c   alpine     "ash"                     59 seconds ago       Up 58 seconds                                                     alpine3
065be7f4fade   alpine     "ash"                     About a minute ago   Up About a minute                                                 alpine2
a4fa900ee55e   alpine     "ash"                     About a minute ago   Up About a minute                                                 alpine1
0dbf7ea2178e   registry   "/entrypoint.sh /etc…"   33 hours ago         Up 36 minutes       0.0.0.0:5000->5000/tcp, [::]:5000->5000/tcp   myregistry

4.查看連接網絡詳細信息

[root@host1 ~]# docker network inspect alpine-net
[{"Name": "alpine-net","Id": "9f6d634e6bd7327163a9d83023e435da6d61bc6cf04c9d96001d1b64eefe4a71","Created": "2025-09-11T23:44:03.139792399+08:00","Scope": "local","Driver": "bridge","EnableIPv4": true,"EnableIPv6": false,"IPAM": {"Driver": "default","Options": {},"Config": [{"Subnet": "172.18.0.0/16","Gateway": "172.18.0.1"}]},"Internal": false,"Attachable": false,"Ingress": false,"ConfigFrom": {"Network": ""},"ConfigOnly": false,"Containers": {"065be7f4fadedbe63bbc2b2e73a408f40876a2fae9609830290ced37bd456bc8": {"Name": "alpine2","EndpointID": "80b24a7d84cbd2c015d7f18903d466644983e07317a669c766b6fda494919c5e","MacAddress": "7e:06:dc:bc:69:9e","IPv4Address": "172.18.0.3/16","IPv6Address": ""},"a4fa900ee55e683cf5b1de1d1c4b9d1f4595dba20daa53bbd7ed041c9a2b9ff5": {"Name": "alpine1","EndpointID": "0d859ee29448bbb4f19f855ee54a23668817d82a754c08476e286b2d525f0ac0","MacAddress": "86:67:e5:e7:17:a8","IPv4Address": "172.18.0.2/16","IPv6Address": ""},"b2f77131151cd9cb5136b5115c3530f1ba915caccc7f64223ba03ea6d7285877": {"Name": "alpine4","EndpointID": "e85a0e3bd691fed7e81c5e65e5c8b24b8d1783166d2684c820db8c63355df056","MacAddress": "22:3f:d3:cc:ad:7d","IPv4Address": "172.18.0.5/16","IPv6Address": ""},"cc049a88659c173e82713a1fa74c13f176e4c1095b64a973dfa8e73abf053557": {"Name": "alpine3","EndpointID": "c91b18ee977e9c7e15470256ca779950d901f5c70b517d94a34ad405845b32d8","MacAddress": "ca:14:42:da:65:e1","IPv4Address": "172.18.0.4/16","IPv6Address": ""}},"Options": {},"Labels": {}}
]

5.自動服務功能發現

[root@host1 ~]# docker attach alpine1
/ # ping -c 2 alpine2
PING alpine2 (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.054 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.062 ms--- alpine2 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.054/0.058/0.062 ms
/ # ping -c 2 alpine4
PING alpine4 (172.18.0.5): 56 data bytes
64 bytes from 172.18.0.5: seq=0 ttl=64 time=0.054 ms
64 bytes from 172.18.0.5: seq=1 ttl=64 time=0.062 ms--- alpine4 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.054/0.058/0.062 ms
/ # ping -c 2 alpine3
PING alpine3 (172.18.0.4): 56 data bytes
64 bytes from 172.18.0.4: seq=0 ttl=64 time=0.060 ms
64 bytes from 172.18.0.4: seq=1 ttl=64 time=0.061 ms--- alpine3 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.060/0.060/0.061 ms
/ # ping -c 2 172.17.0.3
PING 172.17.0.3 (172.17.0.3): 56 data bytes--- 172.17.0.3 ping statistics ---
2 packets transmitted, 0 packets received, 100% packet loss

6.連通問題(我設置的都是在同一網絡中,所以都能通)

? ? ? ? 脫離 alpine1 容器而不要停止他(Ctrl + P + Q)

/ # read escape sequence

7. alpine4 容器測試

[root@host1 ~]# docker attach alpine4
/ # ping -c 2 alpine1
PING alpine1 (172.18.0.2): 56 data bytes
64 bytes from 172.18.0.2: seq=0 ttl=64 time=0.037 ms
64 bytes from 172.18.0.2: seq=1 ttl=64 time=0.060 ms--- alpine1 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.037/0.048/0.060 ms
/ # ping -c 2 alpine2
PING alpine2 (172.18.0.3): 56 data bytes
64 bytes from 172.18.0.3: seq=0 ttl=64 time=0.074 ms
64 bytes from 172.18.0.3: seq=1 ttl=64 time=0.065 ms--- alpine2 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.065/0.069/0.074 ms
/ # ping -c 2 alpine3
PING alpine3 (172.18.0.4): 56 data bytes
64 bytes from 172.18.0.4: seq=0 ttl=64 time=0.099 ms
64 bytes from 172.18.0.4: seq=1 ttl=64 time=0.061 ms--- alpine3 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.061/0.080/0.099 ms

8.訪問外網

/ # ping -c 2 www.baidu.com
PING www.baidu.com (103.235.46.102): 56 data bytes
64 bytes from 103.235.46.102: seq=0 ttl=127 time=242.857 ms
64 bytes from 103.235.46.102: seq=1 ttl=127 time=237.804 ms--- www.baidu.com ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 237.804/240.330/242.857 ms
/ # read escape sequence

? ? ? ? 退出

測試其他容器

[root@host1 ~]# docker attach alpine3
/ # ping -c 2 www.baidu.com
PING www.baidu.com (103.235.46.115): 56 data bytes
64 bytes from 103.235.46.115: seq=0 ttl=127 time=237.227 ms
64 bytes from 103.235.46.115: seq=1 ttl=127 time=246.838 ms--- www.baidu.com ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 237.227/242.032/246.838 ms
/ # read escape sequence
[root@host1 ~]# docker attach alpine1
/ # ping -c 2 www.baidu.com
PING www.baidu.com (103.235.46.102): 56 data bytes
64 bytes from 103.235.46.102: seq=0 ttl=127 time=237.112 ms
64 bytes from 103.235.46.102: seq=1 ttl=127 time=240.606 ms--- www.baidu.com ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 237.112/238.859/240.606 ms
/ # read escape sequence

9.停止并刪除以上實驗用到的所有容器和 alpine-net 網絡,恢復實驗環境

[root@host1 ~]# docker container stop alpine1 alpine2 alpine3 alpine4
alpine1
alpine2
alpine3
alpine4
[root@host1 ~]# docker container rm alpine1 alpine2 alpine3 alpine4
alpine1
alpine2
alpine3
alpine4
[root@host1 ~]# docker network rm alpine-net
alpine-net

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/96587.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/96587.shtml
英文地址,請注明出處:http://en.pswp.cn/web/96587.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Vue3 + Vite + Element Plus web轉為 Electron 應用,解決無法登錄、隱藏自定義導航欄

如何在vue3 Vite Element Plus搭好的架構下轉為 electron應用呢? https://www.electronjs.org/zh/docs/latest/官方文檔 https://www.electronjs.org/zh/docs/latest/ 第一步:安裝 electron相關依賴 npm install electron electron-builder concurr…

qt QAreaLegendMarker詳解

1. 概述QAreaLegendMarker 是 Qt Charts 模塊中的一部分,用于在圖例(Legend)中表示 QAreaSeries 的標記。它負責顯示區域圖的圖例項,通常包含區域顏色樣例和對應的描述文字。圖例標記和對應的區域圖關聯,顯示區域的名稱…

linux 函數 kstrtoul

kstrtoul 函數概述 kstrtoul 是 Linux 內核中的一個函數&#xff0c;用于將字符串轉換為無符號長整型&#xff08;unsigned long&#xff09;。該函數定義在 <linux/kernel.h> 頭文件中&#xff0c;常用于內核模塊中解析用戶空間傳遞的字符串參數。 函數原型 int kstrtou…

LLM(三)

一、人類反饋的強化學習&#xff08;RLHF&#xff09;微調的目標是通過指令&#xff0c;包括路徑方法&#xff0c;進一步訓練你的模型&#xff0c;使他們更好地理解人類的提示&#xff0c;并生成更像人類的回應。RLHF&#xff1a;使用人類反饋微調型語言模型&#xff0c;使用強…

DPO vs PPO,偏好優化的兩條技術路徑

1. 背景在大模型對齊&#xff08;alignment&#xff09;里&#xff0c;常見的兩類方法是&#xff1a;PPO&#xff1a;強化學習經典算法&#xff0c;OpenAI 在 RLHF 里用它來“用獎勵模型更新策略”。DPO&#xff1a;2023 年提出的新方法&#xff08;參考論文《Direct Preferenc…

BLE6.0信道探測,如何重構物聯網設備的距離感知邏輯?

在物聯網&#xff08;IoT&#xff09;無線通信技術快速滲透的當下&#xff0c;實現人與物、物與物之間對物理距離的感知響應能力已成為提升設備智能高度與人們交互體驗的關鍵所在。當智能冰箱感知用戶靠近而主動亮屏顯示內部果蔬時、當門禁系統感知到授權人士靠近而主動開門時、…

【計算機 UTF-8 轉換為本地編碼的含義】

UTF-8 轉換為本地編碼的含義 詳細解釋一下"UTF-8轉換為本地編碼"的含義以及為什么在處理中文時這很重要。 基本概念 UTF-8 編碼 國際標準&#xff1a;UTF-8 是一種能夠表示世界上幾乎所有字符的 Unicode 編碼方式跨平臺兼容&#xff1a;無論在哪里&#xff0c;UTF-8 …

4.6 變體

1.變體簡介 2.為什么需要變體 3.變體是如何產生的 4.變體帶來的麻煩 5.multi_compile和shader_feature1.變體簡介 比如我們開了一家餐廳, 你有一本萬能的菜單(Shader源代碼), 上面包含了所有可能的菜式; 但是顧客每次來點餐時, 不可能將整本菜單都做一遍, 他們會根據今天有沒有…

猿輔導Android開發面試題及參考答案(下)

為什么開發中要使用線程池,而不是直接創建線程(如控制線程數量、復用線程、降低開銷)? 開發中優先使用線程池而非直接創建線程,核心原因是線程池能優化線程管理、降低資源消耗、提高系統穩定性,而直接創建線程存在難以解決的缺陷,具體如下: 控制線程數量,避免資源耗盡…

【網絡通信】IP 地址深度解析:從技術原理到企業級應用?

IP 地址深度解析&#xff1a;從技術原理到企業級應用? 文章目錄IP 地址深度解析&#xff1a;從技術原理到企業級應用?前言一、基礎認知&#xff1a;IP 地址的技術定位與核心特性?1.1 定義與網絡層角色1.2 核心屬性與表示法深化二、地址分類&#xff1a;從類別劃分到無類別路…

grafana實踐

一、如何找到grafana的插件目錄 whereis grafana grafana: /etc/grafana /usr/share/grafana插件安裝目錄、默認安裝目錄&#xff1a; 把vertamedia-clickhouse-datasource-3.4.4.zip解壓到下面目錄&#xff0c;然后重啟就可以了 /var/lib/grafana/plugins# 6. 設置權限 sudo …

uniapp 文件查找失敗:main.js

重裝HbuilderX vue.config.js 的 配置 有問題main.js 框架能自動識別 到&#xff0c;不用多余的配置

KEIL燒錄時提示“SWD/JTAG communication failure”的解決方法

最新在使用JTAG仿真器串口下載調試程序時&#xff0c;老是下載不成功&#xff0c;識別不到芯片&#xff0c;我嘗試重啟keil5或者重新插拔仿真器連接線、甚至重啟電腦也都不行&#xff0c;每次下載程序都提示如下信息&#xff1a;在確定硬件連接沒有問題之后&#xff0c;就開始分…

紅日靶場(三)——個人筆記

環境搭建 添加一張網卡&#xff08;僅主機模式&#xff09;&#xff0c;192.168.93.0/24 網段 開啟centos&#xff0c;第一次運行&#xff0c;重啟網絡服務 service network restart192.168.43.57/24&#xff08;外網ip&#xff09; 192.168.93.100/24&#xff08;內網ip&am…

車載網關框架 --- 車內網關IP轉CAN鏈路解析 done

我是穿拖鞋的漢子,魔都中堅持長期主義的汽車電子工程師。 老規矩,分享一段喜歡的文字,避免自己成為高知識低文化的工程師: 做到欲望極簡,了解自己的真實欲望,不受外在潮流的影響,不盲從,不跟風。把自己的精力全部用在自己。一是去掉多余,凡事找規律,基礎是誠信;二是…

lvgl修改輸入設備驅動使其支持鼠標右鍵、雙擊、滑輪...

我在前幾章移植 lvgl 到linux上時講過注冊鼠標驅動部分&#xff0c;那時候使用的時默認提供的驅動&#xff0c;支持的鼠標功能很少&#xff0c;只有左鍵點擊&#xff0c;那時候我提過我們可以修改驅動使其支持&#xff0c;下面是具體的實現。看上面代碼&#xff0c;我們當時是直…

SpringBoot 中單獨一個類中運行main方法報錯:找不到或無法加載主類

1. 報錯SpringBoot項目&#xff0c;在隨機某個類使用main方法&#xff0c;點擊運行/調試報錯錯誤: 找不到或無法加載主類 com.central.workorder.config.PropertyEncrypt 原因: java.lang.ClassNotFoundException: com.central.workorder.config.PropertyEncrypt2. 原因縮短命令…

React 核心 Hook 與冷門技巧:useReducer、useEffect、useRef 及 is 屬性全解析

&#x1f4da; 前言React 的函數組件 Hooks 模式已經成為現代前端開發的主流。相比類組件&#xff0c;Hooks 讓狀態管理和副作用處理更加簡潔和可復用。但在實際開發中&#xff0c;除了常用的 useState 和 useEffect&#xff0c;還有很多“進階武器”值得我們掌握。本文將深入…

通義靈碼產品演示: 數據庫設計與數據分析

作者&#xff1a;了哥 演示主題&#xff1a;AI 進行數據庫設計以及做數據分析 演示目的 演示通義靈碼對于數據庫的設計能力以及數據分析能力。 演示準備 準備數據庫&#xff0c;這里為了簡單實用 sqlite3 brew install sqlite3使用 vscode&#xff0c;同時安裝好通義靈碼的插件…

MySQL主從同步參數調優案例

#作者&#xff1a;stackofumbrella 文章目錄一、前言二、故障概述2.1 基礎信息2.2 故障現象描述三、故障診斷分析3.1 排查過程3.2 問題根因四、故障解決方案 &#x1f4ca;4.1 解決方案 &#x1f6e0;?五、總結附件一、前言 在磐基系統中大量使用MySQL作為后端的數據存儲&…