• docker简单介绍---网络端口管理


    一、查看docker支持的网络类型

    docker network ls

    bridge:容器使用虚拟交换机的进行通信

    host:使用宿主机的网络

    none:只给容器分配一个lo的网卡,无法和外界进行通信

    使用 docker run --network {host|none|bridge}指定通信方式

    bridge:类似于虚拟机的物理桥接模式,容器与Host属于同一网段并且网络是互通的,运行容器默认是这种网络桥接模式,使用 docker run -it 容器id /bin/bash,

    在容器中使用yum -y install net-tools 就可以使用ifconfig查看容器的IP地址

    docker0为虚拟交换机,使用brctl show来查看虚拟交换机开通的虚拟接口,如果没有brctl则需要安装:yum -y install bridge-utils

    ====================================================================

    查看网络映射

    iptables -t nat -L -n

    端口映射

    随机映射:

    docker run -d -P --name duankou 镜像名称    (docker ps -l 查看随机端口号)

    指定映射端口:

    docker run -d -p 8080:80 -name my_nginx 镜像名称    (将容器的80端口映射给本地host的8080端口)

    docker run -d -p  192.168.1.100:8080:80 -name my_nginx  镜像名称 (将容器的80端口映射给本地192.168.1.100的8080端口,适用于多网卡映射)

    指定多个映射端口

    docker run -d -p 8080:80 -p 443:443 -name my_nginx 镜像名称    (将容器的80端口映射给本地host的8080端口,将容器的443端口映射给本地host的443端口)

    共享容器网络(可以理解为一台主机上运行俩个进程)

    docker run -it  --name web1 --rm  容器id或者名称  /bin/bash

    然后在容器中执行ifconfig

     创建另外一个容器

    docker run -it --network container:cfd9393ea161 --name nginx-2 --rm 另外一个镜像id或者名称 /bin/bash   #--network指定的是需要共享网络的容器

    因为网络已经共享了一个开了80端口的容器,所以我们将nginx的端口改为8080,然后启动,  这样在俩个容器中可以看到俩个容器启动的nginx了,

    可以理解为共享网络,但是其它空间是不共享的,

    修改docker0的ip地址:

    vim /etc/docker/daemon.json

    {
    "registry-mirrors": ["https://4lymnb6o.mirror.aliyuncs.com"],
    "bip":"10.1.0.1/16"
    }

    添加一个bip字段,记得使用,隔开字段,属于python的字典格式

    然后重启docker即可 systemctl restart docker

    修改docker0的DNS地址

    {
    "registry-mirrors": ["https://4lymnb6o.mirror.aliyuncs.com"],
    "bip": "10.1.0.1/16",
    "dns": ["123.150.150.150","8.8.8.8"]

    }

    重启docker'即可,添加一个dns字段 

    docker run -d --name nginx-1 --hostname nginx-1 --rm -p 11111:80 498 -g 'daemon off;'      #498为镜像id的前三位

    进入到容器中,发现ip地址和dns地址都修改过来了  

    ==============================================================================================================================

  • 相关阅读:
    第三章 从网线到网络设备 集线器、交换机、路由器
    914章单机数据库的实现
    图解HTTP全
    【Clickhouse】clickhouse各种模式容器环境搭建
    【Clickhouse】clickhouse 数据类型
    Java NIO 总结
    爬虫文件句柄参考
    Jackson用法大全
    在python中 函数赋值给变量时,需要注意的几个事项
    Python教程:推荐一个比 open 读文件还好用、方便的库
  • 原文地址:https://www.cnblogs.com/python-cat/p/10256535.html
Copyright © 2020-2023  润新知