Docker學習入門(5)

1、Docker容器的網絡基礎

(1)使用 ifconfig 查看系統的網絡配置,dokcer的守護進程就是通過docker0給docker容器提供網絡服務的,這裏的 docker0 就是linux的虛擬網橋

    網橋屬於OSI七層模型的數據鏈路層

    Linux虛擬網橋的特點:可以設置IP地址,相當於擁有一個隱藏的虛擬網卡

    docker0的地址默認劃分: IP:172.17.0.1; 子網掩碼:255.255.0.0; MAC: 02:42:78:DC:00:00到02:42:78:DC:ff:ff

    總共提供了65534個地址

               

(2)docker0

                

(3)如何修改 docker0 地址?

    sudo ifconfig docker0 192.168.200.1 netmask 255.255.255.0

(4)自定義虛擬網橋

   添加虛擬網橋  sudo brctl addbr br0

                           sudo ifconfig br0 192.168.100.1 netmask 255.255.255.0

   更改dokcer守護進程的啓動配置:  /etc/default/docker 中添加DOCKER_OPS值 -b=br0

2、Docker容器的互聯

(1)環境準備:  製作一個用於測試的Docker鏡像Dockerfile:

    FROM ubuntu:14.04

    RUN apt-get install -y ping

    RUN apt-get update

    RUN apt-get install -y nginx

    RUN apt-get install -y curl

    EXPOSE 80

    CMD /bin/bash

(2)允許所有容器互聯    --icc=true(默認允許容器間的連接)

   --link選項:docker run --link=[CONTAINER_NAME]:[ALIAS] [IMAGE] [COMMOND]    映射容器的IP地址

      演示:運行兩個容器  docker run -it --name cct01 yw_sir/cct

                                        docker run -it --name cct02 yw_sir/cct

查看使用--link後容器內的環境變量和hosts文件的變化

(3)拒絕容器間互聯

       修改Docker守護進程的啓動選項    --icc=false

(4)允許特定容器間的連接

       修改Docker守護進程的啓動選項

           --icc=false (阻斷所有容器的訪問,僅僅允許使用--link設置的容器)       

           --iptables=true (控制網絡訪問)       

           --link

3、Docker容器與外部網絡的連接

(1)ip_forwark 默認--ip_forwark=true,允許流量轉發;查看

(2)iptables

          是與Linux內核集成的包過濾防火牆系統,幾乎所有的linux發行版本都包含iptables的功能

                              

表(table):在上圖中nat、mangle、raw等命名的表

鏈(chain):數據處理中不同環節或不同階段

規則(rule):每個鏈下的操作

    ACCEPT 、REJECT、DROP

如:filter表中包含的鏈:INPUT、FORWARD、OUTPUT

(3)允許端口映射訪問

(4)限制IP訪問容器

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章