问题标签 [docker-network]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
681 浏览

mysql - 无法通过主机名从同一网络中的 Spring Boot 容器访问 mysql 容器

我正在尝试从另一个 Spring Boot 应用程序容器访问我的 MySQL 容器,它们都在同一个网络中。我创建了一个网络并将两个容器链接到它:

我的网络的详细信息:

这是我的 application.yml 文件:

这就是我运行两个容器的方式:

然而,我仍然无法从同一网络中的其他 Spring Boot 容器通过主机名访问我的数据库。

这是错误:

当我切换到托管 docker 容器的服务器的 IP 地址时,它就可以工作了。例如 :

我究竟做错了什么 ?

0 投票
0 回答
43 浏览

docker - 如何将 docker 容器限制到 Docker 网络

下面是我的 docker compose 文件:

现在我想在technet网络中启动名为docker-mysql的 MySQL 容器。接下来,我将手动将 docker-compose.yml 中的网络更改为technet2以及用户名和密码,但以相同的容器和图像名称开头。

目前,行为是technet中的旧容器在technet2网络内停止并重建。但是我想拥有两个具有相同容器名称docker-mysql但在不同网络中的 MySQL 容器,即technettechnet2

0 投票
0 回答
351 浏览

docker - docker network macvlan 驱动程序不支持 driver_opts:MTU

根据https://docs.docker.com/v17.09/engine/userguide/networking/work-with-networks/#connect-containers

driver_opts 是:

我通过创建一个值为 --mtu 的网络更改了网桥驱动程序的 MTU,它可以工作。

但是,如果我将驱动程序更改为 macvlan,相同的选项 --mtu 将不起作用

macvlan 的 driver_opts 是否不同?如果是这样,为 macvlan 驱动程序更改 MTU 的选项是什么docker network create

0 投票
0 回答
185 浏览

docker - Docker:使用用户定义的网络时的外部 DNS 解析

当我使用 Docker 守护程序生成的默认桥接网络时,我运行以下命令:

docker run -it --dns=10.xxx.xxx.xxx 961bf2f8b1b2

外部 DNS 解析运行良好,没有任何问题,但是当我使用这样创建的用户定义网络时:

docker network create --subnet=172.18.0.0/16 dockernet

然后我运行:
docker run -it --dns=10.xxx.xxx.xxx --network dockernet 961bf2f8b1b2

DNS解析不再起作用。

我使用一种解决方法通过绑定我的 /etc/resolv.conf 来解决这个问题,如下所示:

docker run -it --dns=10.xxx.xxx.xxx --network dockernet -v /etc/resolv.conf:/etc/resolv.conf 961bf2f8b1b2

我想有一个更合适的解决方案。

0 投票
3 回答
8679 浏览

docker - 当容器在 localhost 接口上侦听时,Docker 端口转发不起作用

我有一个无法解决的端口转发问题。我在 VM 中运行 Linux,并且正在使用该 VM 中的 docker。例如,当我尝试从 docker compose 设置端口转发时:

它仅在容器中运行的应用程序正在侦听 0.0.0.0:3080 的情况下才有效。问题是,我正在 dockerizing 的大多数应用程序都在监听 localhost。0.0.0.0 以外的任何接口都会导致端口转发不起作用。您知道为什么会发生这种情况或如何解决这个问题吗?

我在跑:

Docker 版本 17.05.0-ce,构建 89658be

docker-compose 版本 1.17.1,构建未知

谢谢

PS我找到了一个临时的解决方法。我为容器指定网络模式“主机”,强制容器使用主机操作系统网络,但这种方法在 MacOS 上不起作用。

0 投票
2 回答
4289 浏览

docker - Docker Stack 任务因权限被拒绝错误而被拒绝

我尝试使用docker stack deploy命令部署一个堆栈(包含一个服务),并在 swarm 上从我的应用程序运行 2 个实例!这是我的 docker-compose 文件:

运行sudo docker stack deploy -c ./docker-compose.yml ts命令后,我的堆栈成功部署到 swarm,但这是我的docker stack ps ts 输出:

完整的错误消息是mkdir /var/lib/docker: permission denied

另一个问题是,当我尝试使用已docker service create部署并成功运行的命令服务创建堆栈时,但我无法从本地主机访问该服务!我有两个问题:

  1. 从撰写文件部署堆栈有什么问题,为什么我得到mkdir /var/lib/docker: permission denied错误?
  2. 如何将我的服务网络 k 配置为可从主机访问?
0 投票
0 回答
533 浏览

docker - docker swarm 网络中带有“lb-”前缀的额外容器是什么?如何设置 docker network 没有那个?

Docker 网络是在一个包含多个节点的 docker swarm 中创建的,使用以下命令:

容器通过“docker service create”命令连接到网络。

网络中出现了名为“lb-[network-name]”的额外容器。那个容器是什么以及如何配置 docker network 没有它?

0 投票
0 回答
802 浏览

docker - 驱动程序编程外部连接失败:...绑定:无法分配请求的地址

在我的开发环境中,我想模拟一个“网络农场”部署,其中我有几个“物理”节点运行多个服务,它们属于同一个网络。

所以,假设我有 5 个节点,每个节点将托管 1 mysql、 1nginx和 2 个web应用程序。并将mysql绑定到同一个端口3306,但在不同的 IP 地址上。

我开始写下docker-compose配置并坚持第一步:Docker 拒绝在给定网络中创建新 ip 并将 mysql 绑定到该 ip 上的端口。

这就是我正在尝试使用的配置:

当我尝试这样做时docker-compose up,出现以下错误:

如果我尝试绑定到10.9.2.1,它没有问题。所以在我看来,它无法创建配置为的新 IP 地址ipv4_address: 10.9.2.2

任何想法如何解决这个问题?

0 投票
2 回答
2101 浏览

docker - 使用两个 docker compose 在容器之间的 docker 网络中调用 web api

如何使用 docker 网络和两个包含容器设置的不同 docker-compose 文件从一个 docker 容器向另一个容器发出请求?

我有一个简单的 web api,应该使用这个控制台应用程序调用。Web api 使用以下 docker compose 文件托管:

应该使用这个简单的控制台应用程序调用 web api:

Docker 组成控制台应用程序:

据我所知,通信应该在本地 docker 网络中完成。但我总是在控制台应用程序中收到以下错误消息:SocketException: Resource temporarily unavailableWeb api is available from outside: https://localhost:44334/api/Role...

编辑我只有一个码头主机。

0 投票
0 回答
89 浏览

docker - docker:查看网络 CIDR

当我hostname -I在我的工作站上执行时,我能够看到我所有的 IP,包括属于我的实际物理接口的一个(比如说eth0)以及虚拟的(在我的情况下是由docker服务创建的)。

例如

有没有办法(除了docker network inspect <docker_network_name>)能够快速查看 docker 网络的网络地址?