docker網路配置之自定義網橋

2021-09-08 01:29:25 字數 1742 閱讀 1419

使用特定範圍的 ip (僅適用於v1.x)不適用於新版的v1.1x

docker 會嘗試尋找沒有被主機使用的 ip 段,儘管它適用於大多數情況下,但是它不是萬能的,有時候我們還是需要對 ip 進一步規劃。docker 允許你管理 docker0 橋接或者通過-b選項自定義橋接網絡卡,需要安裝bridge-utils軟體包。

基本步驟如下:

create your own bridge (bridge0 for example)

assign a specific ip to this bridge

start docker with the -b=bridge0 parameter

除了預設的 docker0 網橋,使用者也可以指定網橋來連線各個容器。

在啟動 docker 服務的時候,使用 -b bridge 或 --bridge=bridge 來指定使用的網橋。

如果服務已經執行,那需要先停止服務,並刪除舊的網橋。

$ sudo service docker stop

$ sudo ip link set dev docker0 down

$ sudo brctl delbr docker0

然後建立乙個網橋 bridge0 。

$ sudo brctl addbr bridge0

$ sudo ip addr add 10.0.200.1/24 dev bridge0

$ sudo ip link set dev bridge0 up

檢視確認網橋建立並啟動。

$ ip addr show bridge0

4: bridge0:

mtu 1500 qdisc noop state up group default

link/ether 66:38:d0:0d:76:18 brd ff:ff:ff:ff:ff:ff

inet 10.0.200.1/24 scope global bridge0

valid_lft forever preferred_lft forever

配置 docker 服務,預設橋接到建立的網橋上,並為

$vim /etc/sysconfig/docker

other_args='--insecure-registry 10.0.30.5:5000 --graph=/data/docker/images-b=bridge0'

$ sudo service docker start

啟動 docker 服務。 新建乙個容器,可以看到它已經橋接到了 bridge0 上。

可以繼續用 brctl show 命令檢視橋接的資訊。另外,在容器中可以使用 ip addr 和 ip route 命令來

檢視 ip 位址配置和路由資訊。

5.外部主機想要訪問容器內ip時,需要新增靜態回執路由 

route add -net 10.0.200.0 netmask 255.255.255.0 gw 10.0.30.6(容器所在的宿主機ip)

新版的docker v1.1x.x 相關配置,不需要自己手動建立網橋

dockerd --graph=/data/docker/ &

docker network create --subnet=10.0.200.0/24 --gateway=10.0.200.1 house200   該命令會建立乙個網橋

docker run -itd --network house200 --ip 10.0.200.10 --name mycentos centos:6.6 /bin/bash

Docker 內自定義網路

link 互聯例如 有1個映象 centos 我希望,通過建立乙個容器centos02能聯通乙個已經建立好的容器centos01,如下 root localhost docker run it p name centos02 link centos01 centos bin bash root lo...

docker學習(十) 自定義網路

網路模式 檢視幫助文件docker network help 我們使用這個命令來建立一下網路 先把容器都清楚保證環境的乾淨 先測試下 建立乙個橋接網路的tomcat01 其實這個命令和不使用是一樣的,因為docker給我們建立容器的時候這個引數是預設的即 docker run d p name to...

Docker之自定義網路實現

目錄 四類網路模式,使用docker network www.cppcns.comls檢視docker網路模式 docker網路模式 配置說明 host模式 net host 容器和宿主機共享network namespace。container模式 net container name or id...