當我調用應用程序URL時,我的WAR文件到Elastic Beanstalk的(成功)部署爲我提供了404 Not Found。我可以在/ var/lib/tomcat8/webapps/ROOT /中看到一個application.war文件,而不是手動部署時的META-INF和WEB-INF。AWS CodePipeline成功但未正確部署到Elastic Beanstalk
當我從S3中取出WAR文件並手動將其部署到Elastic Beanstalk時,它就像一個魅力一樣。注意:這與CodeBuild在我的管道中生成的WAR文件相同。更好的是,如果我將文件複製(scp)保存到本地計算機並將其上載到Elastic Beanstalk,它也可以工作。
看來,一切工作,直到部署,一個工作的WAR文件甚至部署到Elastic Beanstalk。
通過eb-activity.log
我可以看到它識別WAR文件並將其從臨時目錄中部署到/var/lib/tomcat8/webapps/ROOT
,但未解壓縮,並且容器/ web服務器未重新啓動。
如何正確部署WAR文件與CodePipeline?
我有同樣的問題,並在AWS論壇上問,爲什麼戰爭放在ROOT文件夾中而不是「解壓縮」:https://forums.aws.amazon.com/thread.jspa?threadID=248895 – Azeq