无法访问码头容器中的Spring Boot API

问题描述:

我试图在我的机器上的泊坞窗容器中运行我的应用程序,但遇到了任何我的端点问题。 (一切正常,当我在本地运行)无法访问码头容器中的Spring Boot API

#DOCKERFILE 
FROM tomcat:latest 

RUN mkdir -p /app/fleet-service 
WORKDIR /app/fleet-service 

COPY /target/fleet-view-1.0.0.war /usr/local/tomcat/webapps/fleet-view-1.0.0.war 

EXPOSE 8080 

图像构建精细,我用下面的CMD运行它:

docker run --rm -p 8080:8080 <imagename> 

我很困惑,因为该应用程序已成功部署,我可以看到日志在我的码头终端。没有错误,数据库连接有效。然而,当我去:

<docker-machine-ip>:8080 
-> i get the tomcat website saying that tomcat is running 

<docker-machine-ip>:8080/api/vehicles/ 
-> should return data as it does when i run it locally but instead i get a '404 Not Found'. 

我觉得我非常接近,但我不知道从哪里去这里。没有应用上下文需要考虑。其实应用程序实际上是在8080上运行。

任何建议,非常感谢,如果您需要更多的信息,请让我知道。谢谢!

+0

你检查了catalina.out并看到.war被正确部署了吗?不管部署是否成功,通常tomcat都会启动 – Robert

+0

@Robert - 是部署应用程序。当我在本地运行它时,我得到的日志与我一样。 – reedb89

答案很简单,但容易被忽略 - 我不得不添加应用程序上下文。

泊坞窗机-IP:8080 /船队 - 视图 - 1.0.0/API /辆

的作品就好了。