如何解决如何使用 docker 网络选项
首先,我不是网络人,我对它及其工作原理有基本的了解,这就是它的终点。
我试图了解 docker 网络是如何工作的,并且能够创建比 --driver 标志集多一点的网络。通读文档,我看到了 --opt 标志,如文档所述,设置了网络的驱动程序选项,但它没有说明(或我找不到)的是选项列表和对每个选项的清晰解释
那么有人可以尽可能简单地解释这些选项的作用吗,或者我在哪里可以找到带有清晰说明的选项列表?
解决方法
在大多数实际场景中,您根本不需要任何网络选项。
# All default options is usually correct
docker network create app
# Attach containers to that network
docker run --net=app --name=db ... mysql
docker run --net=app --name=service -e MYSQL_HOST=db ...
如果您使用 Compose,它通常会为您处理此问题,创建一个名为 default
的网络。 (更多详细信息在 Docker 文档的 Networking in Compose 中。)
version: '3.8'
services:
# Both implicitly attached to a network named "default"
db:
image: mysql
service:
image: ...
environment:
MYSQL_HOST: db
您唯一需要配置的情况是您需要 attach a Compose file's default network to some other pre-existing network,例如将一组 Compose 容器加入另一个 Compose 文件设置。在这种情况下,您可以覆盖 default
网络的“真实”名称
# At the top level of docker-compose.yaml
networks:
default:
external:
name: other_default
您通常不需要指定驱动程序类型、IP 范围或其他配置。 docker network create
文档有一些详细信息,但它们都相当低级且有限。如果您精通 IP 网络并想要创建复杂的拓扑结构,Docker 没有任何路由表或其他设置的概念,只有带有到主机的 NAT 网关的简单隔离网络。
默认情况下,Docker 使用网桥驱动程序进行网络连接。其他网络驱动程序是overlay、host 和macvlan。
要创建一个名为 dev_net 的 macvlan 网络,命令将是 docker network create dev_net -d macvlan
Docker 客户端/服务器有命令的帮助文档,您可以随时通过在终端中附加 --help 来获取命令帮助。例如docker network --help。
有关使用不同 Docker 网络驱动程序的信息,请参阅 Docker 文档。 https://docs.docker.com/network/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。