Docker的網路工作原理

2021-07-02 21:03:00 字數 2058 閱讀 3571

當docker server也就是docker daemon啟動時,會自動建立乙個名字是docker0的bridge,每當docker建立乙個container時,會在主機上面建立乙個名字是veth*的ethernet 埠,並把這個eth*加入到docker0的bridge,在container中會自動建立乙個名字是eth0的ethernet埠,這個eth0和veth*會形成乙個類似管道的對,一一對應。

配置dns

docker是如何分配每個container的hostname和dns配置的,可以通過在contain中mount命令看出一些東西:

mount

.../dev/disk/by-uuid/5f3d0920-98a8-434a-9c02-8163dccf6c62 on /etc/resolv.conf type ext4 (rw,relatime,errors=remount-ro,data=ordered)

/dev/disk/by-uuid/5f3d0920-98a8-434a-9c02-8163dccf6c62 on /etc/hostname type ext4 (rw,relatime,errors=remount-ro,data=ordered)

/dev/disk/by-uuid/5f3d0920-98a8-434a-9c02-8163dccf6c62 on /etc/hosts type ext4 (rw,relatime,errors=remount-ro,data=ordered)

...docker run的-h 可以配置container的hostname,可以通過-h hostname或者--hostname=hostname來配置,docker會把hostname寫入/etc/hostname

例如:xiaogang@ubuntu:~/shadowsocks$ sudo docker run -t -i --hostname ubuu --rm ubuntu:14.04 /bin/bash

root@ubuu:/# cat /etc/hostname

ubuu

--link=conntainer_nameorid:alias,通過這個選項會在/etc/hosts中新增乙個alias,指向container_nameorid, 無需知道具體的ip位址,可以直接使用alias代替。

例如:--dns=ip_address, 會在/etc/resolv.conf的server標籤中新增乙個ip_address

--dns-search=domain,會在/etc/resolv.conf的search標籤中新增乙個domain,如果乙個example.com新增到search標籤中,當container需要查詢乙個host的ip時,host.example.com同時也會被查詢。

container中的/etc/resolv.conf是從主機中的/etc/resolv.conf拷貝而來,只不過是把主機本地的nameserver過濾掉,如果過濾之後沒有任何的nameserver,docker會把google公共nameserver,8.8.8.8和8.8.4.4加入namerserver中。當主機的resolv.conf修改之後會通知container修改

container之間的通訊和container和外部之間的通訊

1.需要設定ip_forward系統引數,必須設定為1

$ sysctl net

.ipv4

.conf

.all

.forwarding

net.

ipv4

.conf

.all

.forwarding =0

$ sysctl net

.ipv4

.conf

.all

.forwarding=1

$ sysctl net

.ipv4

.conf

.all

.forwarding

net.

ipv4

.conf

.all

.forwarding

=1

2.需要設定iptables,允許它們之間的通訊

Docker 網路工作原理詳解

docker 網路工作原理 當docker server也就是docker daemon啟動時,會自動建立乙個名字是docker0的bridge,每當docker建立乙個container時,會在主機上面建立乙個名字是veth 的ethernet 埠,並把這個eth 加入到docker0的bridg...

網路Cookie工作原理

引言 雖然大多數網路cookie使用起來相當簡單,但是它們也有自己獨特的原理。由於涉及到網際網路隱私問題,cookie從2000年就開始受到廣大 的關注,直到現在仍存在著激烈的爭論。然而,cookie提供了使web更加容易導航的能力。幾乎每個 的設計人員都會使用cookie,因為它們能夠提供更好的使...

網路爬蟲工作原理

1 聚焦爬蟲工作原理及關鍵技術概述 相對於通用網路爬蟲,聚焦爬蟲還需要解決三個主要問題 1 對抓取目標的描述或定義 2 對網頁或資料的分析與過濾 3 對url的搜尋策略。抓取目標的描述和定義是決定網頁分析演算法與url搜尋策略如何制訂的基礎。而網頁分析演算法和候選url排序演算法是決定搜尋引擎所提供...