2017-07-18 93 views
1

我有一個WAR文件,我想在Docker中進行部署,但是當我在生成後與關聯的端口一起運行它時,出現此錯誤: no main manifest attribute, in app.war沒有主要清單屬性,在app.war

我Dockerfile看起來像這樣

FROM java:8                                        
EXPOSE 8080                                        
ADD /service.war app.war                                     
ENTRYPOINT ["java","-jar","app.war"]` 

應該做些什麼來解決這個問題?

回答

0

我想你需要一個tomcat,而不是一個java圖像。即使沒有Dockerfile,你也可以嘗試。在同一目錄啓動此命令爲您的.war文件:

docker run --name myTomcat -p 8080:8080 --rm -i -v $(pwd)/service.war:/usr/local/tomcat/webapps/app.war tomcat 

這將啓動Tomcat服務器與你的戰爭部署,並從你的容器映射到你的泊塢窗主機的端口8080。我希望它有幫助。

+0

此命令可以正常工作但我無法訪問網址 –

+0

您可以直接在本地主機上訪問,因爲使用taht命令我們將端口從您的碼頭容器映射到您的碼頭主機。試試'http:// localhost:8080/something'並用合適的(取決於.war文件的內容)替換「something」。 – OscarAkaElvis

+0

我也試過,但鏈接只運行Tomcat服務器而不是war文件。 –