目前,我们定义的任务使用bind_mount
在单个任务中的容器之间共享EFS持久数据,比如说taskA
保存在/efs/cache/taskA
中。
但我们想知道,是否有任何方法可以将taskA
的EFS数据与ECS中的taskB
容器共享。因此,taskB
可以通过在taskB
中执行bind_mount
来访问来自taskA
的数据。
那么,我们可以在ecs中使用bind_mount
来实现这一点吗?或者还有其他选择吗。感谢
taskB
的定义看起来像:
containerDefinitions": [
"mountPoints": [
{
"readOnly": null,
"containerPath": "/efs/cache/taskA",
"sourceVolume": "efs_cache_taskA"
},
...],
"volumes": [
{
"fsxWindowsFileServerVolumeConfiguration": null,
"efsVolumeConfiguration": null,
"name": "efs_cache_taskA",
"host": {
"sourcePath": "/efs/cache/taskA"
},
"dockerVolumeConfiguration": null
},
...
}
您不再需要在EC2上装载EFS,然后再绑定装载。现在ECS支持与ECS(包括EC2和Fargate(的本地集成,这将允许您配置任务以装载同一文件系统(或访问点(,而无需配置EC2(事实上,它也适用于Fargate(。有关更多信息,请参阅本系列博客文章。