gpt4 book ai didi

amazon-web-services - 如何使用弹性beantalk和s3手动上传静态内容

转载 作者:行者123 更新时间:2023-12-03 16:01:48 25 4
gpt4 key购买 nike

我有一个部署在弹性 beanstalk 中的 Python/Flask 应用程序。我一直在通过 git aws.push 部署更新,其中包括我的静态 js 库、css 和图像。

我现在有大约 1 GB 的图像形式的静态内容。我想从与我的应用程序相同的位置提供该内容,也就是说,从我之前为它们提供服务的相同位置,在 /static/img/ 文件夹中。但是,我显然不想将图像添加到源代码管理或使用 git 宏部署它们。

理想情况下,我想连接到托管文件的实例并手动上传它们。但是,我不知道该怎么做。我搜索了与 elastic beanstalk 应用相关联的 s3,但那里没有我的应用的迹象,只有一个压缩部署的存储库。

我可以创建一个新的存储桶并以这种方式处理事情,但我无法将域映射到新的存储桶。每当我尝试将 CNAME 记录添加到存储桶时,都会被拒绝,因为“无法将 URL/IP 添加为 CNAME”。无论如何,最直观的过程似乎是手动将未版本化的静态内容放在已部署的版本化代码旁边。

最佳答案

你是对的,这种类型的静态内容不应该是你的存储库的一部分,当然也不应该存储在 EC2 实例的卷上。

AWS 对此用例的最佳实践是使用 S3 并直接从您的 HTML 代码链接到 S3 对象。 S3 是一种原生支持 HTTP 的对象存储服务。

为了将 S3 用作 Web 服务器,您必须在 S3 上创建一个存储桶。

您可以使用 S3 提供的 URL <bucket-name>.s3-website-<AWS-region>.amazonaws.com从您的网页链接到您的内容。

或者您可以使用自己的域名。在这种情况下,您的存储桶名称必须以您的域名命名,并且您必须在存储桶级别启用“网站托管”选项。这是让 S3 知道如何将 HTTP 请求映射到存储桶所必需的。

这里描述了一个高级场景:http://docs.aws.amazon.com/gettingstarted/latest/swh/website-hosting-intro.html更多详情由 S3 documentation 提供.

作为一个额外的好处,S3 中的存储成本低于 EBS 存储。

关于amazon-web-services - 如何使用弹性beantalk和s3手动上传静态内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22784313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com