![](/img/trans.png)
[英]Establish PSSession to Windows docker container from remote machine (not container host)
[英]Connect to docker container on windows host from another machine
出于开发目的,我需要能够从 same.network 上的其他机器连接到在 Windows 主机上运行 tomcat 的容器。 我在 bridge.network 上本地运行两个容器,并在运行它们时从每个容器发布端口。 这些应用程序可通过localhost
访问,但我无法通过主机的网络名称或 IP 连接到它们,连接被拒绝。 Windows 主机上的 Running.netstat 我看到 tomcat 端口侦听127.0.0.1:8080
和[::1]:8080
,仅此而已。 机器 IP 或0.0.0.0
地址没有条目。
我正在使用这些命令运行容器:
docker network create openldap --driver bridge
docker run -d --rm --name openldap -p 1389:1389 --network openldap local-openldap:latest
docker run -p 8080:8080 --env-file local-env --network openldap local-tomcat:latest
我尝试将0.0.0.0
地址显式添加到 server.xml 中的 Tomcat 配置
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
address="0.0.0.0"/>
我尝试在运行容器时将0.0.0.0
地址显式添加为发布选项的一部分。 我为容器运行了 docker 端口,看到条目8080/tcp -> 0.0.0.0:8080
和8080/tcp ->:::8080
并且我尝试独立运行 tomcat 容器而不加入我创建的 bridge.network 但是什么都没有改变。 为了尝试隔离到 docker,我运行了一个本地 tomcat 实例,不在容器中并且可以访问。
当 docker 文档读给我听时,我感觉好像缺少一些非常基本的东西,就像发布端口选项应该默认执行此操作一样,并且我没有从我一直在尝试的各种搜索中获得任何相关的匹配项。 认为我问错了问题。
解决后的其他详细信息:此问题是在使用 dockerd 作为运行时运行 rancher 桌面时遇到的,结果证明这是问题的根源。
万一其他人发现了这个,事实证明这是一个最近已修复的 rancher-desktop 问题https://github.com/rancher-sandbox/rancher-desktop/issues/2677 。
安装了最新的开发版本,它还没有出现在发布页面上,并且解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.