如何将 EFS 共享挂载到 AWS Fargate?
How can I mount an EFS share to AWS Fargate?
我有一个存储容器日志的 AWS EFS 共享。
我想将此 nfs 共享 (aws efs) 挂载到 AWS Fargate。可能吗?
任何支持文档link将不胜感激。
编辑:由于 April 2020 这个答案不准确。这是 Fargate 1.4.0 之前的情况。如果您使用的是早期版本的 Fargate,这仍然是相关的,否则请参阅更新的答案。
遗憾的是,目前无法将持久性存储与 AWS Fargate 一起使用,但是可以使用针对 AWS 容器服务 [2]
新推出的 public 路线图 [1] 来跟踪此功能的进展情况
您的用例似乎建议使用日志。您是否考虑过使用 AWSLogs 驱动程序 [3] 并将您的应用程序日志发送到 CloudWatch Logs?
[1] https://github.com/aws/containers-roadmap/projects/1
[2]https://github.com/aws/containers-roadmap/issues/53
[3]https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html
现已提供对 Fargate 的 EFS 支持!
你可以做到这一点since April 2020!这有点棘手,但有效。
我 运行 遇到的最大问题是您需要将“平台版本”设置为 1.4.0 - 它默认为“最新”,即 1.3.0。
在您的容器定义中,您需要定义一个 volume 和一个 mountpoint,您希望将 EFS 共享安装在容器内:
音量:
"volumes": [
{
"efsVolumeConfiguration": {
"transitEncryptionPort": null,
"fileSystemId": "fs-xxxxxxx",
"authorizationConfig": {
"iam": "DISABLED",
"accessPointId": "fsap-xxxxxxxx"
},
"transitEncryption": "ENABLED",
"rootDirectory": "/"
},
"name": "efs volume name",
"host": null,
"dockerVolumeConfiguration": null
}
]
在容器中装载卷:
"mountPoints": [
{
"readOnly": null,
"containerPath": "/opt/your-app",
"sourceVolume": "efs volume name"
}
这些帖子对我有帮助,尽管它们缺少一些细节:
wow 需要平台版本为 1.4.0,正如@TheFiddlerWins 建议的那样
我有一个存储容器日志的 AWS EFS 共享。
我想将此 nfs 共享 (aws efs) 挂载到 AWS Fargate。可能吗?
任何支持文档link将不胜感激。
编辑:由于 April 2020 这个答案不准确。这是 Fargate 1.4.0 之前的情况。如果您使用的是早期版本的 Fargate,这仍然是相关的,否则请参阅更新的答案。
遗憾的是,目前无法将持久性存储与 AWS Fargate 一起使用,但是可以使用针对 AWS 容器服务 [2]
新推出的 public 路线图 [1] 来跟踪此功能的进展情况您的用例似乎建议使用日志。您是否考虑过使用 AWSLogs 驱动程序 [3] 并将您的应用程序日志发送到 CloudWatch Logs?
[1] https://github.com/aws/containers-roadmap/projects/1
[2]https://github.com/aws/containers-roadmap/issues/53
[3]https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_awslogs.html
现已提供对 Fargate 的 EFS 支持!
你可以做到这一点since April 2020!这有点棘手,但有效。
我 运行 遇到的最大问题是您需要将“平台版本”设置为 1.4.0 - 它默认为“最新”,即 1.3.0。
在您的容器定义中,您需要定义一个 volume 和一个 mountpoint,您希望将 EFS 共享安装在容器内:
音量:
"volumes": [
{
"efsVolumeConfiguration": {
"transitEncryptionPort": null,
"fileSystemId": "fs-xxxxxxx",
"authorizationConfig": {
"iam": "DISABLED",
"accessPointId": "fsap-xxxxxxxx"
},
"transitEncryption": "ENABLED",
"rootDirectory": "/"
},
"name": "efs volume name",
"host": null,
"dockerVolumeConfiguration": null
}
]
在容器中装载卷:
"mountPoints": [
{
"readOnly": null,
"containerPath": "/opt/your-app",
"sourceVolume": "efs volume name"
}
这些帖子对我有帮助,尽管它们缺少一些细节:
wow 需要平台版本为 1.4.0,正如@TheFiddlerWins 建议的那样