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

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