Docker容器與虛擬化技術——Docker高級網絡管理及私有鏡像倉庫配置

                                 Docker高級網絡管理及私有鏡像倉庫配置

一、網絡啓動與配置參數
Docker啓動時會在主機上自動創建一個docker0虛擬網橋,實際上是一個Linux網橋,可以理解爲一個軟件交換機,它會在掛載其上的接口之間進行轉發。當創建一個Docker容器時,同時會創建一個對vet pair接口。這對接口一端在容器內,即eth0;另一端在本地並被掛載到docker0網橋,名稱以veth開頭
1、Docker網絡相關命令參數
    (1)服務啓動時配置,不能馬上生效
        -b BRIDGE:指定同期掛載的網橋
        --bip=CIDR:定製docker0的掩碼
        -H SOCKET:Docker服務端接收命令的通道
        --icc=true|false:是否支持容器之間進行通信
        --ip-forward=true|false:啓用net.ipv4.ip_forward,打開轉發功能
        --mtu=BYTES:容器網絡中的MTU
    (2)可在啓動服務時指定,也可以啓動容器時指定
        --dns:指定DNS服務器
        --dns-searche:指定DNS搜索域
    (3)在docker run時使用
        -h:配置容器主機名
        --link:添加另一個容器的鏈接
        --net:配置容器的橋接模式
        -p、-P:映射端口
    (4)--net的模式
        ①bridge:橋接模式
        ②none:爲容器創建獨立的網絡命名空間,但不進行網絡配置
        ③host:部位容器創建獨立的網絡命名空間,容器內看到的網絡配置與宿主機保持一致
        ④container:NAME_or_ID:新創建的容器共享指定的已存在容器的網絡命名空間,兩個容器共享網絡配置,但其他資源還是相互隔離的
        ⑤user_defined_network:用戶自定義的網絡
        ⑥macvlan:Macvlan網絡允許您爲容器分配MAC地址,使其在網絡上顯示爲物理設備

2、docker network命令
    (1)docker network ls:列出已有網絡
        -f:指定輸出過濾器
        --no-trunc:不截斷輸出內容
    (2)docker network create [OPTIONS] NETWORK:創建網絡
        --aux-address:輔助的IP地址
        --subnet:網絡地址段
        -d, --driver:網絡驅動類型,如bridge或overlay
        --gateway:網關地址
        --ip-range:分配IP地址範圍
        --ipam-driver:IP地址管理插件類型
        --ipam-opt:IP地址管理插件的選項
        --ipv6:支持IPv6地址
        --label:爲網絡添加元標籤信息
        -o, --opt:網絡驅動支持的選項--subnet:網絡地址段。
    (3)docker network rm NETWORK [NETWORK ...]:刪除網絡
    (4)docker network connect [OPTIONS] NETWORK CONTAINER:將容器接入指定網絡
        --alias:爲容器添加一個別名,此別名僅在所添加網絡可見
        --ip:指定IP地址
        --ip6:指定IPv6地址
        --link:添加鏈接到另外一個容器
        --link-local-ip:爲容器添加一個鏈接地址
    (5)docker network disconnect [OPTIONS] NETWORK CONTAINER:卸載容器網絡
        -f or --force:強制把容器從網絡上移除
    (6)docker network inspect [OPTIONS] NETWORK [NETWORK ...]:查看已有網絡詳情
        -f or --format:給到一個golang模板字符串,對輸出結果進行格式化

 

二、Harbor搭建私有鏡像倉庫
1、下載harbor
    https://github.com/goharbor/harbor/releases

2、解壓
    tar xf harbor-offline-installer-v1.10.2.tgz

3、配置harbor.yml
    主要修改hostname與port

4、準備安裝包
./prepare

如出現ERROR:root:Error: The protocol is https but attribute ssl_cert is not set,直接註釋掉配置文件中的https即可

5、安裝
(1)安裝compose
yum -y install python-pip gcc gcc-c++ python-devel
pip install --upgrade pip
pip install docker-compose
(2)安裝harbor
./install.sh

6、登錄harbor
    網址:即主機ip
    默認賬號:admin
    默認密碼:Harbor12345


7、使用harbor
(1)登錄:docker login 192.168.11.50
①需輸入賬號密碼
②如沒有安裝https及證書,需在客戶端修改docker服務啓動配置
vim /etc/systemd/system/multi-user.target.wants/docker.service
    ExecStart=/usr/bin/dockerd --insecure-registry 192.168.11.50 -H fd:// --containerd=/run/containerd/containerd.sock
vim /etc/docker/daemon.json
    {
         "registry-mirrors": ["http://192.168.11.50"]
    }
(2)上傳鏡像
①給鏡像打標籤
docker tag 7c6604cacec1  192.168.11.50/library/zxg/centos_nginx:v1
②上傳鏡像
docker push 192.168.216.52/library/zxg/centos_nginx:v1

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