【问题标题】:.war file is not deployed in the Elastic Beanstalk environment.war 文件未部署在 Elastic Beanstalk 环境中
【发布时间】:2020-05-29 22:50:04
【问题描述】:

我正在使用 Jenkins 管道在 EB 环境中部署带有 .ebextensions 的 .war 文件。部署成功,所有命令都在部署阶段执行,但是当我检查 /usr/share/tomcat8/webapps/ROOT/ 时,我只看到我的 .war 文件原样存在,没有解压。

这是什么原因?以及有关如何解决该问题的任何想法?请在下面找到我的代码 sn-p。

zip -r app-${BUILD_NUMBER}.zip myapp.war .ebextensions

aws s3 cp myapp.war s3://inc-eb-deployments/inc-batch/myapp.war

【问题讨论】:

    标签: amazon-web-services tomcat amazon-elastic-beanstalk war ebextensions


    【解决方案1】:

    尝试将其部署到 webapps 文件夹,而不是 webapps/ROOT。然后tomcat应该解压到webapps/myapp。

    如果您想在根目录中部署应用程序,您需要将构建输出命名为 ROOT.war 并将其放在 webapps 文件夹中。

    【讨论】:

    • 我尝试了同样的方法,但没有成功。 ROOT.war 也在 webapps/ROOT 目录下,作为 ROOT.war 的 satay,不解压。
    【解决方案2】:

    使用 .war 文件设置 ebextesnions 后,该文件与 ebextensions(.zip 格式)相结合。在这种情况下,应通过 .ebextension 文件手动解压缩 .war 文件。以下是示例代码sn-p。

     fix_path:
        command: "unzip <app-name>.war 2>&1 > /var/log/my_last_deploy.log"
    

    此解决方案适用于我的环境。

    【讨论】:

      猜你喜欢
      • 2018-04-16
      • 2015-10-23
      • 2013-06-14
      • 2016-07-18
      • 1970-01-01
      • 2016-04-20
      • 1970-01-01
      • 2017-10-12
      • 1970-01-01
      相关资源
      最近更新 更多