如何将持久存储附加到 AWS Lightsail 容器?

nde*_*rco 3 amazon-lightsail

AWS Lightsail 支持容器服务,具有部署 - 一种 Docker 组合结构。添加多个容器,指定环境变量和入口点,并选择添加公共IP。

Lightsail 单独提供存储作为块设备。这些可以连接到 Lightsail 实例。

我一直无法找到如何将持久存储添加到容器部署中。持久化文件有哪些好方法?

小智 7

虽然 Docker 确实支持持久卷,并且 Lightsail 支持运行 Docker 容器,但 Lightsail 不支持持久卷。这反映在其文档和容器定价中没有提及容器可用的磁盘空间量。此外,它们还提供了一个旋钮来增加或减少节点(同时运行的容器的单独实例)的数量,这与 Docker 卷的典型实现不兼容,其中假设卷的存储将是传统文件系统(通常不是 NFS 或其他网络文件系统)。

然而,还有其他方法来保存文件。您可以将它们保留在 Amazon S3 中,而不是尝试使用容器的文件系统。Amazon S3 提供了用于持久文件存储的 API,包括直接向公众提供这些文件的 URL(如果您有此要求)的能力。

同样,如果您需要持久数据库,则可以使用 Amazon DynamoDB;如果您更喜欢与 MySQL 兼容的数据库,则可以使用 Amazon RDS。

这意味着 Amazon 的 lightail 容器设计主要面向托管应用程序,例如 Node.js 应用程序,这些应用程序能够与其他 Amazon 基础设施通信,以满足其数据持久性需求。如果您需要持久性并希望在 Amazon 上运行 Docker 化应用程序,那么最好考虑 Amazon EKS,它通过 Kubernetes 容器存储接口 (CSI) 支持持久卷。