我无法在运行在Elastic Beanstalk上的Docker容器上安装EFS卷。这是我在Dockerrun.aws.json
中的内容:
{
"AWSEBDockerrunVersion": "1",
"Volumes": [
{
"HostDirectory": "/mydir",
"ContainerDirectory": "/mydir"
}
]
}
这是.ebextensions/storage-efs-mountfilesystem.config
中的内容。其余部分与this相同。
option_settings:
aws:elasticbeanstalk:application:environment:
EFS_VOLUME_ID: 'fs-*****'
EFS_MOUNT_DIR: '/mydir'
当我进入我的Elastic Beanstalk环境时,我看到该卷已安装在主机上:
[ec2-user@ip-****** app]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
us-east-1a.fs-******.efs.us-east-1.amazonaws.com:/ 9007199254740992 0 9007199254740992 0% /mydir
但是在我的Docker容器中,文件系统不是EFS:
root@99046bd6a358:/reo# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/xvda1 8125880 1552688 6472924 20% /mydir
我的VOLUME
中没有Dockerfile
条说明。
此外,如果我在Docker容器中创建了一个文件,那么当我返回主机目录时该文件就不存在了。因此,/mydir
不是来自主机卷。我还需要在Docker上访问我的EFS卷吗?