【发布时间】:2019-05-21 19:06:16
【问题描述】:
我正在 docker 工具箱中运行一个 Spring Boot 应用程序。应用程序在应用程序属性中设置的端口 8380 上运行。但是,当我在容器中运行其映像时,我使用端口 8380:8082 发布。当我从 ip 192.168.99.100(我的 docker 机器 ip)和端口 8380 访问它时,它给了我 ERR_CONNECTION_REFUSED 错误。 192.168.99.100 拒绝连接。
有什么想法可能是错的吗?
我尝试使用 localhost 而不是 docker-machine ip。我检查了 kitematic 的访问 url,即 192.168.99.100:8380。使用它不起作用。
这是我的 DockerFile:
FROM java:8
EXPOSE 8082
ADD /build/libs/tsi-csrportal-gui-2.0-SNAPSHOT.jar dockerDemoCsrportal.jar
ENTRYPOINT ["java", "-DTSI_APP_NAME=csrportal", "-DTSI_ENV=test", "-Dtsi.log.console", "-jar", "dockerDemoCsrportal.jar"]
我希望服务在我使用正确的端点访问时给出 json 响应。类似于我在没有 docker 工具箱的情况下运行 spring boot 应用程序。 (唯一的变化是现在我使用 docker machine ip 而不是使用 localhost)
【问题讨论】:
-
您的应用程序是否在端口 8082 上运行?如果不是,请在 DockerFile 中公开应用程序运行的端口。
-
感谢@NareshKumar。我的应用程序在端口 8380 上运行。我将它暴露在我的 DockerFile 中并且它工作了 :)
标签: java spring-boot docker