无法从主机连接到Docker容器

时间:2016-01-10 16:02:44

标签: docker

第一次使用Docker所以我可能犯了一个新手的错误,但是这里有。我正在尝试使用reactioncommerce/reaction图片,它似乎正常运行。但是,我似乎无法从主机连接到服务器。

我按照Docker Hub page的建议运行docker run -p :8080 -it reaction,然后尝试通过主机上的浏览器转到http://localhost:8080来访问它,但无法建立连接。我哪里错了?

我在Linux Mint主机上运行。

2 个答案:

答案 0 :(得分:7)

我认为您的问题将是-ppublish)标志。假设您的容器实际上正在侦听端口8080 - 尝试-p 8080:8080,它将localhost:8080映射到您的容器。 (从技术上讲,它将映射0.0.0.0:8080,这是所有地址 - 包括外部的)

但我想如果您没有在左侧指定某些内容,那么您将获得一个随机端口号映射 - 您应该能够在docker psdocker port中看到这一点。命令。

当您运行docker run -it时,您将以交互方式启动它 - 除非您另行指定,否则应该启动'在docker文件中定义的任何内容'。我认为这将是你想要的服务,但我不知道那个应用程序。您还可以使用在后台运行容器的-d标志。

答案 1 :(得分:0)

我相信这个命令会起作用:

docker run -p 127.0.0.1:8080:8080 -it reaction

我尝试使用本地网络服务器做同样的事情,但是在我将地址localhost添加到我的127.0.0.1命令之前,无法使用-p连接到我的容器。

您的/etc/hosts文件应包含以下条目:

127.0.0.1    localhost

这将解析域localhost,允许您使用它来访问您的服务器。