我对如何设置从 WSL docker 容器内返回到 Windows 上的路由有点迷失。我应该指出,我故意不使用 Docker Desktop。
所以这是场景:
我在 Windows 10 计算机上安装了 MariaDB,使用标准 IP 和端口 127.0.01:3306。
确切地说,我有一个通过 WSL 2 从 Windows 商店 Ubuntu 20.04 LTS 安装的更新实例 Ubuntu。
在 Ubuntu 上,我安装了一个 docker,并与正在运行的 Centos 容器一起工作。
我需要我的 PHP 项目能够与 Windows 安装的 MariaDB 进行通信。我的困惑是,在我的 docker 容器(centos)中,我可以设置我的 /etc/hosts 文件将域 local_db 指向 -> 127.0.0.1 但我相信这使得它只尝试在 docker 镜像中进行自我通信(其中当我访问该域时,不存在数据库实例。此外,在 Unbuntu 上我可以做同样的事情,但我不能确定它是否真的会在 Windows 上与正确的端口通信,或者它是否只是包含在 Ubuntu 中无法退出。
那么问题是,我如何不仅能够从 docker 容器到达/路由到 WSL,而且还能到达/路由到 Windows?
我的一些研究表明,我需要以某种方式使用 0.0.0.0 来“绑定到任何东西/所有东西”,但仅仅尝试使用它而不是 localhost(我相信各位专家都知道)被证明是不够的。
感谢您的指导!