【发布时间】:2020-03-13 12:42:48
【问题描述】:
嘿,我正在通过弹性 beanstalk 部署我的多容器 docker env。
我的 docker-compose.yml 有一个类似
的条目service:
image: redis
volumes:
- redisdata:/data
volumes:
redisdata:
通过这种方式,redisdata 的内容被持久化到磁盘并“存活”部署。
在 dockerrun.aws.json 方面,这会导致
{
"AWSEBDockerrunVersion": 2,
"containerDefinitions": [
{
"essential": true,
"image": "redis",
"mountPoints": [
{
"containerPath": "/data",
"sourceVolume": "Redisdata"
}
],
"name": "redis"
}
],
"family": "",
"volumes": [
{
"host": {
"sourcePath": "redisdata"
},
"name": "Redisdata"
}
]
}
现在我的问题:
ec2-instance $ df -h
/dev/xvda1 7,8G 7,7G 0 100% /
/dev/dm-3 99G 89M 94G 1% /var/lib/docker/devicemapper/mnt/2d33cb679881808fac34182bfbec8feb57bf5f65c81c51b52c3f6c9917541040
创建的卷redisdata 的大小只有 7.7 GB,而 redis 容器的主根文件系统只有 99 GB。这是此类命名卷被挂载到 ec2 实例上的/var/app/current/redisdata 的结果,而该文件夹只是 8 GB 根挂载的一部分。
如何向 Dockerrun.aws.json 添加尺寸规格?
我已经看到在 Dockerrun.aws.json 中指定“标准”挂载点的选项,但是如何确保创建了源目录并且它有足够的空间?
【问题讨论】:
标签: amazon-web-services docker amazon-ec2 amazon-elastic-beanstalk