欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

docker network 自定義網絡配置與管理指南詳細過程

 更新時間:2025年05月27日 09:57:11   作者:摸魚的后端  
Docker網絡是容器間通信和與外部世界交互的基礎,通過自定義網絡,可以實現容器間的隔離、靜態(tài) IP 分配和服務發(fā)現,這篇文章主要介紹了docker network 自定義網絡配置與管理指南,需要的朋友可以參考下

Docker 自定義網絡配置與管理指南

1. 網絡基礎概念

Docker 網絡是容器間通信和與外部世界交互的基礎。通過自定義網絡,可以實現容器間的隔離、靜態(tài) IP 分配和服務發(fā)現。

關鍵術語:

  • 子網(Subnet):IP 地址的邏輯分組,例如 172.18.0.0/16 包含 65,536 個 IP 地址
  • 網關(Gateway):子網的默認路由,通常是子網的第一個或最后一個 IP
  • CIDR 表示法:IP/前綴長度,如 172.18.0.1/16 表示前 16 位為網絡位
  • 橋接網絡(Bridge):Docker 默認的網絡驅動,用于容器間通信

2. 創(chuàng)建自定義網絡

創(chuàng)建名為 net_base 的橋接網絡,指定特定的子網和網關:

docker network create \
  --driver bridge \         # 使用橋接網絡驅動(默認)
  --subnet 172.18.0.0/16 \  # 指定 IP 地址范圍
  --gateway 172.18.0.254 \  # 手動指定網關 IP(子網內的最后一個可用 IP)
  net_base                  # 網絡名稱

參數說明

  • --driver bridge:創(chuàng)建基于 Linux 橋接的網絡
  • --subnet:定義網絡的 IP 地址范圍
  • --gateway:設置網關 IP(必須在子網范圍內)

3. 啟動容器并分配靜態(tài) IP

在自定義網絡中啟動容器并分配靜態(tài) IP:

docker run -d \
  --name mysql-8.0.39 \        # 容器名稱
  --network net_base \         # 連接到自定義網絡
  --ip 172.18.0.1 \           # 指定靜態(tài) IP 地址(網關為 0.254,因此 0.1 可用)
  -p 3306:3306 \              # 端口映射
  -e MYSQL_ROOT_PASSWORD=XXXXXX \  # 環(huán)境變量設置
  -v /etc/localtime:/etc/localtime:ro \  # 時區(qū)同步
  -v /volume/mysql_8.0.39/data:/var/lib/mysql \  # 數據持久化
  mysql:8.0.39                # 鏡像名稱

注意事項

  • 靜態(tài) IP 必須在子網范圍內且未被使用
  • 網關已設置為 172.18.0.254,因此 0.1 可安全分配給容器
  • 靜態(tài) IP 需要在創(chuàng)建容器時指定,無法在運行時修改

4. 網絡管理常用命令

查看網絡列表

docker network ls

查看網絡詳細信息

docker network inspect net_base

連接現有容器到網絡

docker network connect net_base <容器名或ID>

斷開容器與網絡的連接

docker network disconnect net_base <容器名或ID>

刪除自定義網絡(需先斷開所有容器):

docker network rm net_base

5. 驗證網絡配置

檢查容器 IP 地址

docker inspect -f '{{.NetworkSettings.Networks.net_base.IPAddress}}' mysql-8.0.39

從容器內部測試網絡連通性

# 測試網關連通性
docker exec -it mysql-8.0.39 ping 172.18.0.254
# 測試其他容器連通性(如果有)
docker exec -it mysql-8.0.39 ping 172.18.0.3

查看容器網絡配置

docker exec -it mysql-8.0.39 ip addr show eth0

6. 網絡配置最佳實踐

  • 為不同環(huán)境創(chuàng)建獨立網絡:開發(fā)、測試、生產環(huán)境使用不同網絡
  • 合理規(guī)劃 IP 地址:為每個服務預留足夠的 IP 地址空間
  • 避免網關 IP 沖突:手動指定網關時,確保與容器 IP 無重疊
  • 使用網絡別名簡化通信
docker run -d --name web --network net_base --network-alias www nginx

其他容器可通過 www 域名訪問該容器

使用 Docker Compose 管理復雜網絡

version: '3'
networks:
  net_base:
    driver: bridge
    ipam:
      config:
        - subnet: 172.18.0.0/16
          gateway: 172.18.0.254
services:
  mysql:
    image: mysql:8.0.39
    networks:
      net_base:
        ipv4_address: 172.18.0.1

7. 故障排查

容器無法訪問外網

  • 檢查網關 IP 是否正確配置
  • 確認宿主機防火墻允許容器網絡流量

容器間無法通信

  • 檢查容器是否連接到同一網絡
  • 確認 IP 地址分配無沖突
  • 使用 docker network inspect 檢查網絡配置

靜態(tài) IP 分配失敗

  • 確保指定的 IP 在子網范圍內
  • 使用 docker network inspect 查看已分配的 IP

通過合理使用自定義網絡和靜態(tài) IP 分配,可以構建出結構清晰、易于管理的容器網絡環(huán)境。

到此這篇關于docker network 自定義網絡配置與管理指南的文章就介紹到這了,更多相關docker network 自定義網絡配置內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 在Docker中使用Redis的步驟詳解

    在Docker中使用Redis的步驟詳解

    這篇文章主要給大家介紹了關于如何在Docker中使用Redis的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2020-08-08
  • Docker?安裝Tomcat、實現Tomcat集群的詳細過程

    Docker?安裝Tomcat、實現Tomcat集群的詳細過程

    這篇文章主要介紹了Docker安裝Tomcat、實現Tomcat集群,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-06-06
  • Docker容器連接實現步驟解析

    Docker容器連接實現步驟解析

    這篇文章主要介紹了Docker容器連接實現步驟解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • 淺析docker-compose部署mysql無法訪問的問題

    淺析docker-compose部署mysql無法訪問的問題

    Compose 是 Docker 容器進行編排的工具,定義和運行多容器的應用,可以一條命令啟動多個容器,使用Docker Compose不再需要使用shell腳本來啟動容器。接下來通過本文給大家分享docker-compose部署mysql無法訪問的問題,需要的朋友參考下吧
    2018-10-10
  • Docker desktop安裝mysql過程

    Docker desktop安裝mysql過程

    文章介紹了如何在本地已有的Docker環(huán)境中拉取并啟動MySQL容器,并詳細說明了常用的環(huán)境變量參數,此外,還討論了如何通過掛接本地磁盤來持久化MySQL數據,從而避免數據丟失
    2024-12-12
  • docker容器/etc/hosts文件修改方法

    docker容器/etc/hosts文件修改方法

    在容器內部,當需要訪問其他容器或主機時,可以通過/etc/hosts文件來解析主機名,從而實現網絡通信,這篇文章主要介紹了docker容器/etc/hosts文件,需要的朋友可以參考下
    2023-06-06
  • Docker容器實現SSH遠程直連

    Docker容器實現SSH遠程直連

    在某些特殊需求下,我們想ssh直接遠程連接docker 容器,本文主要介紹了Docker容器實現SSH遠程直連,具有一定的參考價值,感興趣的可以了解一下
    2023-08-08
  • Docker基礎教程之Dockerfile語法詳解

    Docker基礎教程之Dockerfile語法詳解

    這篇文章主要給大家介紹了關于Docker基礎教程之Dockerfile語法的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Docker具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • Docker安裝ClickHouse并初始化數據測試

    Docker安裝ClickHouse并初始化數據測試

    clickhouse作為現在流行的數據分析數據庫,非常熱門,docker如何安裝ClickHouse,很多朋友并不是很明白,今天小編抽空給大家分享一篇教程關于Docker安裝ClickHouse并初始化數據測試的問題,一起看看吧
    2021-06-06
  • 一文教你徹底解決Docker日志膨脹

    一文教你徹底解決Docker日志膨脹

    這篇文章主要為大家詳細介紹了如何快速檢查,清理 Docker 日志,并設置日志大小限制以防止未來日志失控,感興趣的小伙伴可以跟隨小編一起學習一下
    2025-05-05

最新評論