• docker 容器网络基础


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

    docker缺省自带的网络

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

    host 网络, This enables a container to attach to your host’s network (meaning the configuration inside the container matches the configuration outside the container).

    none 网络, This offers a container-specific network stack that lacks a network interface. This container only has a local loopback interface (i.e., no external network interface).

    bridge 网络, All Docker installations represent the docker0 network with bridge; Docker connects to bridge by default. Run ifconfig on the Linux host to view the bridge network.

    docker network inspect bridge  # find the specific network details
    docker network ls # list all networks

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

    容器缺省使用的网络

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

    1.  在单 host 情况下, docker run 启动容器会加入docker系统自带的 bridge 网络,  即进入网桥模式, 这时docker daemon就会扮演 DHCP 服务器, 为容器分配一个和 docker0 同网段的ip, 并连接到 docker0 . 所以在容器中, 总是可以通过 docker0 的ip 访问到 host 主机. 

    2. 在 swarm 下, 缺省使用 overlay 网络, 适合于多 host 的容器集群. 

    3. 在compose 下, 缺省为 docker-compose.yaml 建立一个 brige 网络, 其中的所有服务都会接入该 bridge 网络, 网络名称由 docker-compose 命令的  -p 或 –project-name 参数指定. 

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

    使用网络

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

    1. 可以使用 docker network 命令增加网络

    2. 可以在 docker-compose.yaml 文件中, 增加 network 并使用网络

    3. 可以使用命令 docker run --net=network_name  , 在容器启动的时候加入到指定的网络

    4. 可以在docker-compose.yaml 文件中, 将 service 加入到已存在的网络中. 

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

    增加网络

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

    增加一个 bridge 网络 

    # docker network create --driver bridge my_first_ever_bridge_network

    增加一个 overlay 网络

      overlay 网络适合多 host 的 容器集群, overlay 网络需要先在 docker daemon 环境中配置好 consul/etcd/zookeeper 存储. 详细操作见: https://foxutech.com/docker-networking/

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

    dns 和 参考

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

    https://foxutech.com/docker-networking-dns/

    https://foxutech.com/docker-networking/

    https://foxutech.com/docker-compose-networking/

  • 相关阅读:
    springboot 2.4.5 redis 配置类+缓存
    华为ensp模拟器 提示40 错误问题
    Nodejs
    Python PermissionError:[Errno 13]权限被拒绝 [winerr 5]
    Window10的linux docker 安装(wsl版本)
    window10的 Linux 子系统ssh配置
    vue3.0中provide和inject实现响应式传值
    正确开启vue3.0调试工具vue-devtools
    vue动态设置组件样式
    element-ui菜单导航的三种递归写法(三)
  • 原文地址:https://www.cnblogs.com/harrychinese/p/docker-network2.html
Copyright © 2020-2023  润新知