如何在可复制的 EC2 实例中管理第三方文件?

How to manage third party files in replicable EC2 instance?

我有一个来自库的文件,大小 > 50MB,所以我无法在我的实例中使用 Git 部署它。我将此文件包含在我的一些 PHP 脚本中,那么我应该怎么做才能使我的实例可复制并将此文件包含在我的脚本中?

我可以将它存储在 S3 存储桶中,但我不确定这是否是一个好的做法(包括外部文件)。

需要但不适合保存在存储库中的文件非常适合 S3。我通常会创建一个 [companyname]-ops 或 [companyname]-assets 具有窄访问权限的 S3 存储桶 - 例如标准机器的只读 IAM 角色。

部署过程的一部分是推送(或拉取)您的代码,并从 S3 拉取资产。

显然,这可以通过一百万种方式完成。我倾向于将代码存储库、数据库和 s3 视为具有自己的部署用途的工具。

将文件存储在 S3 上是我经常看到的一种选择。 或者,您可以使用已包含的文件烘焙您自己的 AMI,因此您不需要额外的引导。这也应该加快整个复制过程。