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

多個docker compose啟動的容器之間通信實現(xiàn)過程

 更新時間:2025年09月07日 14:19:26   作者:Allocator  
文章討論了Docker Compose中多組容器編排的問題,指出默認情況下各組容器網(wǎng)絡會隔離,為了解決跨組訪問的問題,文章建議創(chuàng)建一個公共網(wǎng)絡,并將各組容器組的默認網(wǎng)絡配置改為該公共網(wǎng)絡,同時啟用外部連接,這樣可以實現(xiàn)跨組訪問,解決網(wǎng)絡隔離的限制

背景

本地或者某些開發(fā)環(huán)境我們會使用docker-compose.yml來編排一組容器,同時會給這一組容器分配默認的網(wǎng)絡外部名稱

以busybox鏡像舉個例子:

services:

    g1:
        image: busybox:latest
        container_name: g1
        restart: unless-stopped
        command: ['sh', '-c', 'echo "Hello from BusyBox!" && sleep 3600']

networks:
    default:
        name: group1_net

使用docker compose docker-compose.yml up -d啟動后使用docker network ls就可以看到名字為group1_net的默認網(wǎng)絡

docker network ls
...

eda03dfdc6ed   group1_net             bridge    local

一般我們會將這一組相關的容器編排的docker-compose.yml文件放置于一個文件夾中進行維護,當本地存在多組編排的容器的docker-compose.yml文件的時候,也就相當于會有多個文件夾用于存放和管理這些文件,比如本地有兩組編排的容器,

那么本地文件結構如下:

tree
.
├── group1
│   └── docker-compose.yml
└── group2
    └── docker-compose.yml

2 directories, 2 files

啟動這兩組容器,可以看到相應的網(wǎng)絡同時創(chuàng)建

8d6bce7a03cc   group1_net             bridge    local
080cfe997ef2   group2_net             bridge    local

這個時候會引入一個問題,這種方式會讓啟動的每一組容器網(wǎng)絡是隔離的,一般情況下編排容器組的時候確實是每一組容器應該做網(wǎng)絡隔離,但是某些場景還是會遇到需要夸容器組的網(wǎng)絡訪問,

最佳實現(xiàn)

實現(xiàn)跨容器組(docker-compose)的容器訪問最佳實現(xiàn)還是將需要跨組訪問的容器組分配到同一個網(wǎng)絡.

這個實現(xiàn)非常簡單,首先使用如下指令創(chuàng)建一個network公共網(wǎng)絡.

docker network create group_share_net

然后修改每一個容器組的docker-compose.yml默認網(wǎng)絡配置項.將其網(wǎng)絡名字改為前一步創(chuàng)建的公共網(wǎng)絡名,即group_share_net同時配置external: true,表示此docker-compose.yml使用已經定義好的外部網(wǎng)絡.

修改后的結果如下:

services:

    g1:
        image: busybox:latest
        container_name: g1
        restart: unless-stopped
        command: ['sh', '-c', 'echo "Hello from BusyBox!" && sleep 3600']

networks:
    default:
        external: true
        name: group_share_net

以及

services:

    g2:
        image: busybox:latest
        container_name: g2
        restart: unless-stopped
        command: ['sh', '-c', 'echo "Hello from BusyBox!" && sleep 3600']

networks:
    default:
        external: true
        name: group_share_net

再重啟兩個容器組,這個時候進入到容器g1去嘗試ping通容器g2.

docker exec -it g1 /bin/sh
/ # ping -c 5 g2
PING g2 (172.20.0.2): 56 data bytes
64 bytes from 172.20.0.2: seq=0 ttl=64 time=0.061 ms
64 bytes from 172.20.0.2: seq=1 ttl=64 time=0.024 ms
64 bytes from 172.20.0.2: seq=2 ttl=64 time=0.026 ms
64 bytes from 172.20.0.2: seq=3 ttl=64 time=0.017 ms
64 bytes from 172.20.0.2: seq=4 ttl=64 time=0.019 ms

--- g2 ping statistics ---
5 packets transmitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 0.017/0.029/0.061 ms

這里就可以看出group1中的g1容器可以正常訪問到group2中的g2容器,表明兩個docker-compose.yml編排的容器就能夠實現(xiàn)相互訪問.

總結

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

相關文章

  • Windows Server 2016 安裝 Docker的過程及遇到問題

    Windows Server 2016 安裝 Docker的過程及遇到問題

    若要在 Windows Server 上安裝 Docker,可以使用由 Microsoft 發(fā)布的 OneGet 提供程序 PowerShell 模塊,接下來通過本文給大家介紹Windows Server 2016 安裝 Docker的過程及遇到問題,一起看看吧
    2021-09-09
  • 使用docker inspect查看容器部署位置的方法

    使用docker inspect查看容器部署位置的方法

    Docker Compose 作為 Docker 生態(tài)系統(tǒng)中的重要組件,極大簡化了多容器應用的管理工作,在實際運維過程中,我們經常需要了解這些由 Compose 啟動的容器的具體部署位置和詳細配置信息,這正是docker inspect命令大顯身手的地方,下面小編給大家介紹一下查看方法
    2025-05-05
  • 減少Docker鏡像大小的10個優(yōu)化技巧

    減少Docker鏡像大小的10個優(yōu)化技巧

    當使用Docker時,鏡像大小是一個很大的問題,下面這篇文章主要給大家介紹了關于減少Docker鏡像大小的10個優(yōu)化技巧,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • 優(yōu)化 Docker 鏡像大小常見的方式

    優(yōu)化 Docker 鏡像大小常見的方式

    這篇文章主要介紹了如何優(yōu)化 Docker 鏡像大小,幫助大家更好的理解和使用docker容器,感興趣的朋友可以了解下。
    2020-09-09
  • 基于Docker+Selenium Grid的測試技術應用示例代碼

    基于Docker+Selenium Grid的測試技術應用示例代碼

    Selenium Grid允許我們在多臺計算機上并行運行測試,并集中管理不同的瀏覽器版本和瀏覽器配置。這篇文章給大家介紹基于Docker+Selenium Grid的測試技術應用示例代碼,需要的朋友參考下吧
    2021-08-08
  • 如何批量刪除Docker中已經停止的容器的幾種方法

    如何批量刪除Docker中已經停止的容器的幾種方法

    本文主要介紹了批量刪除Docker中已經停止的容器的幾種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05
  • Docker Compose在不同環(huán)境的多種安裝方式

    Docker Compose在不同環(huán)境的多種安裝方式

    這篇文章主要介紹了Docker Compose在不同環(huán)境的多種安裝方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • docker部署應用的三種方式

    docker部署應用的三種方式

    越來越多的前端團隊選擇用Docker部署前端項目,本文主要介紹了docker部署應用的三種方式,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • docker入門之容器介紹

    docker入門之容器介紹

    這篇文章主要介紹了docker入門之容器介紹的相關資料,需要的朋友可以參考下
    2018-10-10
  • docker 如何修改容器的端口

    docker 如何修改容器的端口

    正在運行的容器端口沖突了,但是還需要這個容器,怎么辦?只能修改端口了,今天通過本文給大家介紹docker 如何修改容器的端口,感興趣的朋友一起看看吧
    2024-01-01

最新評論