當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排序演算法是決定搜尋引擎所提供...