【发布时间】:2014-12-10 23:54:37
【问题描述】:
- 我有一个战争文件,。 myapp.war(它恰好是一个 grails 应用,但这并不重要)
- 我将它上传到一个 s3 存储桶,例如 us-west-2 中的 myapp
-
我使用 S3 存储库类型设置了 OpsWorks:
存储库类型:S3 存储库 URL:https://myapp.s3-us-west-2.amazonaws.com/myapp.war Access key ID:对上述bucket有读权限的key 秘密访问密钥:此密钥的秘密
部署到 Java 层中的实例 (Tomcat 7)
- 所有指示灯都为绿色,部署成功
- 但该应用并未实际部署
- 进入实例并查看 /usr/share/tomcat7/webapps 我找到了一个名为“myapp”的目录。在这个目录中有一个名为“archive”的文件。 'archive' 看起来是一个 war 文件,但它没有命名为 'archive.war',并且它位于 webapps 的子目录中,因此 tomcat 无论如何也不会部署它。
现在,OpsWorks 文档说存档应该是“zip”文件。但是:
将 myapp.war 压缩到 zip 存档“myapp.war.zip”并更改此文件的路径会导致“myapp”包含“myapp.war”。没有部署,因为 tomcat 不在 'webapps/myapp' 中寻找战争文件
将“myapp.war”的名称更改为“myapp.zip”并更改存储库路径会导致“myapp”再次包含单个文件“存档”。
所以。谁能描述如何正确地从 S3 向 OpsWorks 提供战争文件?
【问题讨论】:
标签: aws-opsworks