我使用 docker 在我的服务器上部署了一个幽灵博客平台。现在我想将它公开到互联网上,但我在这样做时遇到了一些困难。
我在路由器中打开了端口 8000
,并将其转发到端口 32769
,这是分配给该容器的端口。在我的网络中使用端口 32769
我可以正常访问该网站,但是当我尝试从 Internet 访问它时它会出现 took too long to respond
错误。
本地 IP + 端口:http://10.0.0.140:32769/
这个帖子也被添加到Super User,因为有人说它会在那里得到更好的回应。
答案 0 :(得分:2)
假设您在 docker 中的应用程序现在正在端口 8000 上运行 您想将您的应用程序公开到互联网。 请求将是:互联网 -> 路由器 -> 物理计算机(主机)-> docker。
EXPOSE 8000
指令完成。
该端口应该首先可以从您的主机访问,因此,当将您的 docker 镜像作为 docker 容器启动时,您应该添加 -p
参数,例如
sudo docker run -d -it -p 8000:8000 --name docker_contaier_name docker_image_name
从现在开始,您的 docker 应用程序可以在您的主机中访问,假设它是您的物理计算机。10.0.0.140
只是您的计算机 LAN IP 地址,它无法从 Internet 访问。
您只能通过互联网 IP 连接到您的应用程序,为此,您可以检查您的路由器以查看您的 WAN IP 地址,该地址将由您的互联网服务提供商分配给您的路由器。或者用“我的 IP 是什么”去谷歌