Docker-Compose - 前端服务无法使用后端的端点
上下文 我目前正在开发一个多容器项目,涉及 React、django 和(最终)几个数据存储,所有数据存储都容器化并与 docker-compose 捆绑在一起。这都开发完了
启用 VPN 的测试容器:无法连接到 localhost:49198 的 Ryuk
我在 Java/maven 项目中使用 Testcontainer 进行单元和集成测试。测试按预期进行,直到我运行我用来工作的 VPN。 使用 VPN,我可以看到错误消息“C...
我正在尝试配置一个docker compose来使用postgres连接另一个容器上的nodejs应用程序(带有nest)。 从本地它可以正常工作,但是当在服务器上尝试它时,它不起作用......
我托管了两个带有以下 docker 文件的容器 docker run --name openvpn \ -v /root/easyrsa_master:/etc/openvpn/easyrsa \ -v /root/ccd_master:/etc/openvpn/ccd \ -e OVPN_SERVER_NET='192.168...
我有两个 docker 容器前端和 api api 提供 Restful API,前端是 Next.JS 应用程序 当我将 uri 设置为 apollo 客户端时,我需要一个适用于 SSR 和 CSR 的统一 URL...
给定一个docker网络,是否可以列出所有可见的容器及其主机名?我有一些带有自定义网络的 docker-compose 文件,如下所示: docker-compose-1.yaml 维...
我有一个在 win server 2016 上运行的 Windows docker 容器 容器中运行的站点可以从网络上的其他节点访问。 容器可以访问互联网(它可以...
我有两个服务 - 一个是应用程序,另一个是数据库。 这是 docker compose 文件的草图: 版本:“2” 服务: 公司: 容器名称:公司应用程序 延伸: 文件:../base-...
所以我尝试创建一个网络(docker network create),以便其流量将通过特定的物理网络接口(NIC);我有两个:(内部)和 所以我尝试创建一个网络(docker network create),以便其流量将通过特定的物理网络接口(NIC);我有两个:<iface1>(内部)和 <iface2>(外部)。 我需要两个网卡的流量在物理上分开。 方法1: 我认为macvlan是应该用来创建这样的网络的驱动程序。 对于我在互联网上找到的大部分内容,解决方案参考 Pipework(现已弃用)和临时 docker-plugins(也已弃用)。 对我最有帮助的是this1 docker network create -d macvlan \ --subnet 192.168.0.0/16 \ --ip-range 192.168.2.0/24 \ -o parent=wlp8s0.1 \ -o macvlan_mode=bridge \ macvlan0 然后,为了使容器从主机可见,我需要在主机中执行此操作: sudo ip link add macvlan0 link wlp8s0.1 type macvlan mode bridge sudo ip addr add 192.168.2.10/16 dev macvlan0 sudo ifconfig macvlan0 up 现在容器和主机可以看到对方了:)但是容器无法访问本地网络。 这个想法是容器可以访问互联网。 方法2: 由于我将手动使用 <iface2>,因此如果默认情况下流量经过 <iface1>,我就可以了。 但无论我以哪种顺序启动网卡(我也尝试暂时删除 <iface2> 的 LKM);整个流量总是被外部网卡超越<iface2>。 我发现这种情况发生是因为路由表在某个“随机”时间自动更新。 为了强制流量通过<iface1>,我必须(在主机中): sudo route del -net <net> gw 0.0.0.0 netmask 255.0.0.0 dev <iface2> sudo route del default <iface2> 现在,我可以(通过多种方式)验证流量是否刚刚经过 <iface1>。 但当路由表(自动)更新时,所有流量都会转移到 <iface2>。该死! 我确信有一种方法可以使路由表“静态”或“持久”。 编辑(2018 年 7 月 18 日): 主要思想是能够使用两个可用物理网络接口中的仅一个通过 Docker 容器访问互联网。 我的环境: 在为 vm virbr0 网桥创建的主机上,IP 地址为 192.168.122.1,以及接口为 ens3 且 IP 地址为 192.168.122.152 的 VM 实例。 192.168.122.1 - 是 192.168.122.0/24 网络的网关。 进入虚拟机: 创建网络: # docker network create --subnet 192.168.122.0/24 --gateway 192.168.122.1 --driver macvlan -o parent=ens3 vmnet 创建docker容器: # docker run -ti --network vmnet alpine ash 检查: / # ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 12: eth0@if2: <BROADCAST,MULTICAST,UP,LOWER_UP,M-DOWN> mtu 1500 qdisc noqueue state UP link/ether 02:42:c0:a8:7a:02 brd ff:ff:ff:ff:ff:ff inet 192.168.122.2/24 brd 192.168.122.255 scope global eth0 valid_lft forever preferred_lft forever / # ping 192.168.122.152 PING 192.168.122.152 (192.168.122.152): 56 data bytes ^C --- 192.168.122.152 ping statistics --- 2 packets transmitted, 0 packets received, 100% packet loss / # ping 192.168.122.1 PING 192.168.122.1 (192.168.122.1): 56 data bytes 64 bytes from 192.168.122.1: seq=0 ttl=64 time=0.471 ms ^C --- 192.168.122.1 ping statistics --- 1 packets transmitted, 1 packets received, 0% packet loss round-trip min/avg/max = 0.471/0.471/0.471 ms 好的,我启动了另一个 IP 地址为 192.168.122.73 的虚拟机,并从 docker 进行检查: / # ping 192.168.122.73 -c2 PING 192.168.122.73 (192.168.122.73): 56 data bytes 64 bytes from 192.168.122.73: seq=0 ttl=64 time=1.630 ms 64 bytes from 192.168.122.73: seq=1 ttl=64 time=0.984 ms --- 192.168.122.73 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max = 0.984/1.307/1.630 ms 从 docker 实例中,我无法 ping 通虚拟机上的接口,但可以访问本地网络。 / # ip n|grep 192.168.122.152 192.168.122.152 dev eth0 used 0/0/0 probes 6 FAILED 在虚拟机上我添加 macvlan0 网卡: # ip link add macvlan0 link ens3 type macvlan mode bridge # ip addr add 192.168.122.100/24 dev macvlan0 # ip l set macvlan0 up 从 docker 我可以 ping 通 192.168.122.100: / # ping 192.168.122.100 -c2 PING 192.168.122.100 (192.168.122.100): 56 data bytes 64 bytes from 192.168.122.100: seq=0 ttl=64 time=0.087 ms 64 bytes from 192.168.122.100: seq=1 ttl=64 time=0.132 ms --- 192.168.122.100 ping statistics --- 2 packets transmitted, 2 packets received, 0% packet loss round-trip min/avg/max = 0.087/0.109/0.132 ms
无法将 NFS 文件共享挂载到 Azure VM 上运行的 Docker 容器
我们希望将在多个 Docker 容器中运行的应用程序部署到 Azure 虚拟机。我们希望 Docker 容器能够直接从 ...
Spring-Boot 应用程序中的 MongoSocketOpenException
我正在尝试在 Docker 上运行我的应用程序。问题是,当我运行 mongo 图像时,它工作得很好。但是然后我运行 myapp 图像,它使用 mongo 作为数据库,它提供 com.mongodb。
如何解决在 Linux Mint 21.1 中运行的 Docker Alpine 容器上的 apk 更新的 DNS 错误?
尝试在配置如下的系统上构建 docker 映像时收到 DNS 错误: 基础镜像:Alpine 3.18 或 3.15 泊坞窗版本:24.0.5 运行 Docker 的操作系统:Linux Mint 21.1 Vera (
是否可以在AWS ECS EC2实例上的同一任务中使用不同容器的网络堆栈?
我想在一个 ECS 任务中运行两个容器。 容器 1 应使用默认的 docker 网络模式网桥运行。 容器 2 应使用第一个容器的网络堆栈。使用 docker run ......
使用host.docker.internal从docker连接到本地机器(主机)中的SQL Server
我正在尝试使用 host.docker.internal 连接到在本地计算机中运行的 SQL Server 实例(按照 https://docs.docker.com/docker-for-windows/networking/#use- 中的建议)案例和工作...
我正在一台主机上运行 docker,我想将 docker 内的特定接口(TUN 接口)连接到主机的外部接口之一。 当在 docker 中运行 ifconfig 时,我...
如何在多个 Docker Compose 组之间共享单个 Docker 数据库服务?
我有一个由 Web 服务器和 Oracle 数据库组成的 Docker Compose 组。我仅将其用于开发,而不是生产。 Web 服务器依赖于 Oracle,因此在它之前等待 Oracle
在docker中运行mosquito Broker,broker ip地址是172.18.5.10,docker网络网关是172.18.5.1。还有一些其他 docker 连接到该网络,我也有几个 MQTT de...
如何从 docker 容器连接到本地主机 Windows 上的 spring boot ap
我有两个应用程序,一个 Spring Boot 在我的 Windows 本地主机上运行,端口:8080,另一个 Spring Boot docker 容器,在本地主机:9000 运行 - 是的,我可以在 postam 中访问它...
下图展示了我的网络配置。我正在根据 Docker 的桥接网络教程启动一个 alpine 容器,并尝试使用 ping/traceroute 来尝试了解什么......