AWS上的Docker在以某种方式运行时填充其精简池?
我在AWS上有一个ElasticBeanstalk服务器。 即使没有图像被拖动,精简池仍会持续填充一天,直到文件系统以只读方式重新挂载并且应用程序死亡。
Docker 1.12.6在最新的Amazon AMI上发生这种情况。
我真的无法做出正面或反面的。
当一个EC2实例(托pipeBeanstalk)启动时,它在精简池中大约有1.3GB。 当我的1.2GB图像运行时,它有大约3.6GB(这是记住的信息,这是非常接近)。 好没关系。
切到5小时后…
(从托pipe它的EC2实例) docker info
返回:
Storage Driver: devicemapper Pool Name: docker-docker--pool Pool Blocksize: 524.3 kB Base Device Size: 107.4 GB Backing Filesystem: ext4 Data file: Metadata file: Data Space Used: 8.489 GB Data Space Total: 12.73 GB Data Space Available: 4.245 GB
lvs
同意。
在另外几个小时内,将会变成12.73GB使用和0B免费。
dmesg将会报告:
[2077620.433382] Buffer I/O error on device dm-4, logical block 2501385 [2077620.437372] EXT4-fs warning (device dm-4): ext4_end_bio:329: I/O error -28 writing to inode 4988708 (offset 0 size 8388608 starting block 2501632) [2077620.444394] EXT4-fs warning (device dm-4): ext4_end_bio:329: I/O error [2077620.473581] EXT4-fs warning (device dm-4): ext4_end_bio:329: I/O error -28 writing to inode 4988708 (offset 8388608 size 5840896 starting block 2502912) [2077623.814437] Aborting journal on device dm-4-8. [2077649.052965] EXT4-fs error (device dm-4): ext4_journal_check_start:56: Detected aborted journal [2077649.058116] EXT4-fs (dm-4): Remounting filesystem read-only
然而,容器本身几乎没有使用任何空间…(在Docker容器中): df -h
/dev/mapper/docker-202:1-394781-1exxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 99G 1.7G 92G 2% / tmpfs 3.9G 0 3.9G 0% /dev tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/xvda1 25G 1.4G 24G 6% /etc/hosts shm 64M 0 64M 0% /dev/shm
du -sh /
1.7G /
这个空间如何填满? 我的程序正在做非常低容量的日志logging,日志文件非常小。 我有很好的理由不把它们写入标准输出/标准错误。
xxx@xxxxxx:/var/log# du -sh . 6.2M .
我也做了docker logs
,输出小于7k:
>docker logs ecs-awseb-xxxxxxxxxxxxxxxxxxx > w4 >ls -alh -rw-r--r-- 1 root root 6.4K Mar 27 19:23 w4
相同的容器不这样做我的本地docker设置。 最后,在EC2实例本身运行du -sh /
使用率低于1.4GB。
它不能被日志文件填满,也不会被填充到容器中。 可以发生什么? 我不知道该怎么做!
- 无法启动环境:应用程序版本无法使用,无法在环境中使用
- 在Dockerrun.aws.json中做什么“日志logging”?
- Elastic Beanstalk和Docker启动错误
- AWS ElasticBeanstalk Multidocker未使用正确的Cmd创buildECS任务
- 从Docker Elastic Beanstalk容器中获取Elasticache地址
- Python / Django Elastic Beanstalk现在无法部署
- 使用Spinnaker从dockerhub部署Docker镜像到Aws Eb
- 如何在Elastic Beanstalk多容器docker上使用fluentd日志驱动程序
- 在Docker容器中获取弹性beanstalk环境variables