主题
Docker 网络(Network)
Docker Network 是用于 Docker 容器之间的通信的机制。
docker network
bash
用法: docker network COMMAND
管理网络
命令:
connect 将容器连接到网络
语法: docker network connect [OPTIONS] NETWORK CONTAINER
示例:
- docker network connect my-network my-container # 将容器连接到指定网络
create 创建网络
语法: docker network create [OPTIONS] NETWORK
示例:
- docker network create my-network # 创建一个新的网络
- docker network create --driver bridge my-bridge-network # 创建一个桥接网络
disconnect 将容器从网络断开
语法: docker network disconnect [OPTIONS] NETWORK CONTAINER
示例:
- docker network disconnect my-network my-container # 将容器从指定网络断开
inspect 显示一个或多个网络的详细信息
语法: docker network inspect [OPTIONS] NETWORK [NETWORK...]
示例:
- docker network inspect my-network # 查看网络的详细信息
ls 列出网络
语法: docker network ls [OPTIONS]
示例:
- docker network ls # 列出所有网络
- docker network ls --filter driver=bridge # 列出所有桥接网络
prune 删除未使用的网络
语法: docker network prune [OPTIONS]
示例:
- docker network prune -f # 强制删除未使用的网络
rm 删除一个或多个网络
语法: docker network rm [OPTIONS] NETWORK [NETWORK...]
示例:
- docker network rm my-network # 删除指定网络
bride / host / none
bridge 网络是默认网络,它在 Docker 安装时自动创建。当容器在该网络上运行时,它们会被分配一个 IP 地址,可以通过容器名称或 IP 地址进行访问。此外,容器之间也可以相互访问。
host 网络允许容器与主机共享网络命名空间,这意味着容器使用主机上的 IP 地址,并且不会分配自己的 IP 地址。这使得容器可以直接与主机进行通信,而无需进行端口映射。但是,此网络无法让容器之间相互访问。
none 网络表示容器没有连接到任何网络。在这种情况下,容器必须使用 --network 标志显式指定网络。这通常用于某些特定的应用场景,例如在不希望容器访问外部网络的情况下使用。