如何从任何网络上的我的网站找到URL/公共IP以访问Docker容器运行的服务器

如何从任何网络上的我的网站找到URL/公共IP以访问Docker容器运行的服务器,docker,networking,Docker,Networking,我已经设置了node.js服务器,并在Docker容器中运行它。 我在我的计算机上托管MySQL数据库,并已连接服务器。 我已经在netlify上部署了我的网站,它使用RESTAPI向服务器发送和检索数据 目前,API url使用“…”当我访问数据库所在的同一台计算机上的网站时,我能够看到从服务器检索到的数据 但是,当我在另一台计算机上访问网站时(以及从不同的网络),我无法看到从服务器获得的数据 我曾尝试使用127.0.0.1以及Docker容器的IP地址172.17.0.2,但也无法解决问题

我已经设置了node.js服务器,并在Docker容器中运行它。 我在我的计算机上托管MySQL数据库,并已连接服务器。 我已经在netlify上部署了我的网站,它使用RESTAPI向服务器发送和检索数据

目前,API url使用“…”当我访问数据库所在的同一台计算机上的网站时,我能够看到从服务器检索到的数据

但是,当我在另一台计算机上访问网站时(以及从不同的网络),我无法看到从服务器获得的数据

我曾尝试使用127.0.0.1以及Docker容器的IP地址172.17.0.2,但也无法解决问题

我希望能够使用我的网站从任何计算机在世界上有权访问互联网,并能够发送和检索数据从服务器


那么,问题是否存在于我使用localhost的API url中?如果是这样,我应该使用什么地址?

这与Vue有什么关系?这与您在主机上安装了Node并且根本没有Docker的情况完全相同;它不是
localhost
,因为它总是“此计算机”或“此容器”。Docker私有IP地址基本上是无用的,你永远不需要查找它们。@DavidMaze那么我必须做端口转发和所有其他日常工作吗?@DavidWeldon谢谢你指出,我已经将标记更改为node.js你将永远需要
Docker run-p
选项或同等选项。一旦这样做了,容器就无法与主机上运行的任何其他服务区分开来;如果需要在边界路由器中为普通节点进程设置端口转发,那么也需要为Docker包装的节点进程设置端口转发。