我在春季启动PORT 80
中指定application.properties
server.port=80
因此,当在localhost上运行时,它将在端口80上运行
现在我需要在docker容器中运行它,并且在端口映射上进行了一些尝试。
docker run -d -p 80:8080 DOCKERHUB_REPO/DOCKER_IMAGE
然后我做了
docker run -d -p 80:80 DOCKERHUB_REPO/DOCKER_IMAGE
这些都不起作用。我应该如何进行?任何帮助将不胜感激。谢谢
答案 0 :(得分:0)
我认为首先,您应该确保docker容器中的应用程序确实从端口80启动。
docker exec -it <process_id> bash
curl http://localhost:80/<somthing, some reset or actuator if you have it>
设置完成后,请确保已在Dockerfile中指定EXPOSE 80
。阅读the accepted answer可以了解-p
和EXPOSE
选项的作用。
现在,使用-p
运行很好,但是也许您没有访问端口80的权限。为了消除图片中与Docker相关的问题,我建议使用大于1024,例如8080。
如果可以(使用Expose和-p选项),则可以肯定地确定其在主机上的安全性