如何从 docker 容器内部访问 Laravel Herd 应用程序?

问题描述 投票:0回答:1

我有多个应用程序与 Laravel Herd 一起运行。 (假设 myapp1.test 和 myapp2.test) 我想通过在 docker 中运行服务来测试其功能。该服务需要访问 myapp 上的端点 (myapp1.test/endpoint)。

由于 myapp1 和 myapp2 本身不在 docker 容器内运行,并且无法仅使用 IP 地址进行访问,因此有没有办法让我在 docker 内的服务访问该端点?

如果我只使用 url (myapp1.test/endpoint),docker 容器内的应用程序会尝试连接到 127.0.0.1 docker 镜像内部,但找不到我的应用程序。

我尝试过 --add-host=host.docker.internal:host-gateway 也不起作用。

使用 --network=host 我似乎找不到正在运行的应用程序,该应用程序应该在端口 9090 上提供服务。(似乎是因为此选项不允许容器内的应用程序链接到主机的 IP地址)

我尝试使用 herd proxy 命令,但它也没有给我带来有希望的结果。

知道是否/如何进行这项工作吗?

(在 MacOS Sequoia 15.0.1 上运行)

docker laravel-herd
1个回答
0
投票
更新:

设法让它与 docker run --add-host=myapp1.test:主机网关

让我的 Docker 应用程序正确获取数据时遇到一些麻烦,因为它是带有未经验证的证书的安全链接,但是

wget --no-check-certificate

https://myapp1.test:443/

从容器内部工作!

© www.soinside.com 2019 - 2024. All rights reserved.