我正在练习使用Docker (https://www.docker.com/play-with-docker)构建web应用程序。我的Dockerfile看起来像这样
# Test web-app to use with Pluralsight courses and Docker Deep Dive book
# Linux x64
FROM alpine
LABEL maintainer="nigelpoulton@hotmail.com"
# Install Node and NPM
RUN apk add --update nodejs nodejs-npm
# Copy app to /src
COPY . /src
WORKDIR /src
# Install dependencies
RUN npm install
EXPOSE 8080
ENTRYPOINT ["node", "./app.js"]摘自https://github.com/nigelpoulton/psweb/blob/master/Dockerfile。我可以构建镜像并在其上运行容器,但是我很难查看应用程序。
docker container run -d —name web1 -p 8080:8080 psweb当从我的本地终端运行时,我可以在localhost:8080上看到它,但我不知道需要哪个(如果可能的话) IP才能在web浏览器中看到它。
在play with docker UI上,有一个IP地址123.456.7.89,我单击Open Port,给它8080,但我仍然无法访问它。在这方面的任何帮助都将不胜感激!目前我正在尝试访问123.456.7.89:8080
抱歉,如果我错过了一些明显的东西,仍然是非常新的docker/webapps
发布于 2020-04-08 23:57:23
容器暴露端口8080,并且码头运行线设置从主机的端口8080到容器的端口8080的端口转发。
如果浏览器在同一台计算机上,您应该能够通过在地址栏中写入http://localhost:8080来访问节点服务器。
如果你输入127.0.0.1 (或者你的电脑拥有的任何其他地址,例如:你的Wifi适配器的IP )而不是localhost,你也应该能够访问它。
如上所述,有一种方法可以让您知道容器的实际IP:
docker inspect postgres | grep 'IPAddress'发布于 2020-06-30 21:33:22
要在浏览器中访问您的web应用程序,您必须单击(内部) IP地址旁边显示的端口。
查看此处:https://imgur.com/AQTTN7i
这将把你带到一个复杂的网址,解析为你的网络应用的IP:端口(类似于http://ip172-18-0-70-brti9kosm4g00eh6pmg-8080.direct.labs.play-with-docker.com)
https://stackoverflow.com/questions/61104342
复制相似问题