我开发了 Grails 应用程序并成功部署在 Tomcat7 windows 版本上。我想将它部署在 Amazon EC2(AMI linux 32 版本)上。我在 EC2 上成功安装了 Tomcat7,一切正常。我将 .war 文件传输到 amazon ec2,但收到错误消息“http 状态 404:请求的资源不可用”。我想知道在 Windows 和 Linux 中生成 .war 文件之间的不匹配是否是问题的根源?任何帮助表示赞赏!
问问题
2973 次
3 回答
3
您是否考虑过使用Elastic Beanstalk进行部署?EC2 本身更像是一个 IAAS,因此您仍然需要处理很多配置细节(例如服务器安装、负载平衡..),这可能很困难。Beanstalk 是一个免费的包装器(例如 PAAS),包含您在典型安装中需要的大多数 AWS 服务,并为您的部署准备了一些预配置的环境。
这是一篇关于如何使用 Beanstalk 部署 Grails 的文章 - 它有点旧但仍然非常相关。
于 2013-06-05T18:18:38.333 回答
0
这可能是路径映射的问题。您可以尝试以 root 身份安装 Web 应用程序并试一试。
于 2019-02-10T22:37:15.300 回答
0
Boxfuse 带有非常简单的原生支持,可以在 EC2 上部署 Grails 3.x 应用程序。
所有你需要做的就是字面上
boxfuse run my-grails3-app-1.0.jar
Boxfuse 会自动
- 融合为您的应用程序量身定制的最小操作系统映像(需要 <10 秒,映像大约 100 MB,包括JVM 和您的应用程序)
- 将其推送到安全的在线图像存储库
- 在大约 30 秒内将其转换为 AMI
- 创建一个弹性 IP 并为其分配一个新域
- 创建一个打开正确端口的安全组
- 启动您的 AMI 实例并确保运行状况检查通过
- 将弹性 IP(和新域)映射到您的新实例
所有更新都作为零停机蓝/绿部署执行。如果您需要多个实例,Boxfuse 还支持 ELB、Auto-scaling 等。
Boxfuse 分析您的本机 Grails 3 application.yml 配置并自动提取您的应用程序所需的端口和健康检查信息。然后使用此信息正确设置安全组和 ELB。
更多信息:https ://boxfuse.com/getstarted/grails
免责声明:我是 Boxfuse 的创始人兼 CEO
于 2015-12-22T15:15:09.217 回答