나는 codiva online ide의 개발자입니다. 사용자가 Java 프로그램을 실행할 때마다 새 컨테이너가 시작됩니다. 우리는 컨테이너 크기의 상한선을 설정할 수있는 유일한 방법이기 때문에 devicemapper 저장 드라이버를 사용합니다.Docker/var/lib/docker/devicemapper/devicemapper 2.7GB를 사용하여
몇 달 동안 사용하면 디스크 사용량이 증가하고/var/lib/docker/devicemapper/devicemapper가 약 2.7GB를 차지하는 것으로 나타났습니다.
실행되지 않는 모든 도킹 컨테이너를 삭제했으며, 불행히도/var/lib/docker/devicemapper/devicemapper의 디스크 사용량이 여전히 2.7GB로 표시됩니다.
이 공간을 되 찾는 가장 좋은 방법은 무엇입니까? 우리는 영구 저장 장치가 필요하지 않습니다. 우리는 모든 데이터를 삭제해도 괜찮습니다. 저장해야하는 데이터가 있기 때문에 호스트 디렉토리를 직접 마운트하고 해당 파일은 도커 외부에서 관리됩니다.
sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
실행 중이거나 중지 된 컨테이너가 없습니다. 도커 정보 결과가 여기에 있습니다.
$ sudo docker info
Containers: 1
Images: 14
Server Version: 1.9.1
Storage Driver: devicemapper
Pool Name: docker-202:1-143417-pool
Pool Blocksize: 65.54 kB
Base Device Size: 107.4 GB
Backing Filesystem: ext4
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 2.591 GB
Data Space Total: 107.4 GB
Data Space Available: 1.469 GB
Metadata Space Used: 2.531 MB
Metadata Space Total: 2.147 GB
Metadata Space Available: 1.469 GB
Udev Sync Supported: true
Deferred Removal Enabled: false
Deferred Deletion Enabled: false
Deferred Deleted Device Count: 0
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.77 (2012-10-15)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 3.13.0-76-generic
Operating System: Ubuntu 14.04.3 LTS
CPUs: 1
Total Memory: 992.5 MiB
Name: ip-172-31-26-50
ID: NIQ5:2NDW:SB77:ZNZU:UO6G:EYLB:JIW7:SQLL:QLWY:LNRM:SU6P:ZS7X
WARNING: No swap limit support
매달 리거나 고아가 된 볼륨이 없습니다. 8
sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
java 8 289bdffc37d7 3 weeks ago 669.2 MB
가 이미 https://lebkowski.name/docker-volumes/하고 여전히 불필요한 공간을 사용하는 지침을 따랐다 :
sudo docker volume ls
DRIVER VOLUME NAME
유일한 이미지가 자바입니다.
편집 1 : 나는 docker images -a
의 결과를 추가했습니다. 이것은 많은 수의 명명되지 않은 이미지를 보여줍니다. 이 모든 이미지의 합계가 4.5GB까지 올라 가기 때문에 크기는 의심 스럽지만 내 전체 /var/lib/docker
은 약 2.7GB에 불과합니다.
$ sudo docker images -a
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
java 8 289bdffc37d7 3 weeks ago 669.2 MB
<none> <none> 5d7cc49c4372 3 weeks ago 668.8 MB
<none> <none> 9e756f3b105a 3 weeks ago 310.9 MB
<none> <none> 7615ebf33bb7 3 weeks ago 310.9 MB
<none> <none> ac079291ad51 3 weeks ago 310.9 MB
<none> <none> cd02ed4609aa 3 weeks ago 310.9 MB
<none> <none> 07bbd1c2007f 3 weeks ago 310.9 MB
<none> <none> 6331ed9a346a 3 weeks ago 310.9 MB
<none> <none> b647ad8e0a08 3 weeks ago 310.9 MB
<none> <none> f23012d4423e 3 weeks ago 310.9 MB
<none> <none> 0d3e866c82f3 3 weeks ago 301 MB
<none> <none> c28cbef85c39 3 weeks ago 169.7 MB
<none> <none> 3f0d3d140ce1 3 weeks ago 125.1 MB
<none> <none> 17bd2058e0c6 3 weeks ago 125.1 MB
그 중 하나를 시도 할 때 오류가 발생합니다. $ sudo를 고정 표시기 RMI 5d7cc49c4372 데몬에서 오류 응답 : 충돌이 : 5d7cc49c4372을 삭제할 수 없습니다 (강제 할 수 없음) - 이미지가 부양 자녀 이미지를 오류가 있습니다 이미지를 제거하지 못했습니다 : 그것에 대해 읽고 [5d7cc49c4372]
입니다 단지 필요한 이미지 java : 8이이 하위 이미지에 의존하는 것 같습니다. 의미
$ sudo docker history 289bdffc37d7
IMAGE CREATED CREATED BY SIZE COMMENT
289bdffc37d7 3 weeks ago /bin/sh -c /var/lib/dpkg/info/ca-certificates 418.2 kB
5d7cc49c4372 3 weeks ago /bin/sh -c set -x && apt-get update && apt- 357.9 MB
7615ebf33bb7 3 weeks ago /bin/sh -C#(nop) ENV CA_CERTIFICATES_JAVA_VE 0 B
9e756f3b105a 3 weeks ago /bin/sh -C#(nop) ENV JAVA_DEBIAN_VERSION=8u9 0 B
ac079291ad51 3 weeks ago /bin/sh -C#(nop) ENV JAVA_VERSION=8u91 0 B
07bbd1c2007f 3 weeks ago /bin/sh -C#(nop) ENV JAVA_HOME=/usr/lib/jvm/ 0 B
cd02ed4609aa 3 weeks ago /bin/sh -c { echo '#!/bin/sh'; echo 'set 87 B
b647ad8e0a08 3 weeks ago /bin/sh -C#(nop) ENV LANG=C.UTF-8 0 B
6331ed9a346a 3 weeks ago /bin/sh -c echo 'deb http://httpredir.debian. 61 B
f23012d4423e 3 weeks ago /bin/sh -c apt-get update && apt-get install 9.93 MB
0d3e866c82f3 3 weeks ago /bin/sh -c apt-get update && apt-get install 131.2 MB
c28cbef85c39 3 weeks ago /bin/sh -c apt-get update && apt-get install 44.67 MB
3f0d3d140ce1 3 weeks ago /bin/sh -C#(nop) CMD ["/bin/bash"] 0 B
17bd2058e0c6 3 weeks ago /bin/sh -C#(nop) ADD file:76679eeb94129df23c 125.1 MB
는 태그가없는 이미지는 제거 할 수 없습니다, 나는 디자인으로 생각 여전히 ~ 고정 표시기 매장 따라 이미지만을 차이점 이후 6백70메가바이트해야 사용되는 전체 크기입니다.
devicemapper의 디스크 사용을 줄이는 방법을 알려주십시오.
당신이 "고정 표시기의 이미지 -a"를 실행하면 어떤 인쇄 저를 보여줄 수 :이를 위해
,이 명령을 사용할 수 있습니까? 오래된 레이어가 남아 있는지 확인하기 만하면됩니다. – Fares
docker 이미지 -a에 대한 결과를 추가했습니다. 사용하지 않은 이미지가 많이 보입니다. – JackDaniels
https://github.com/chadoe/docker-cleanup-volumes를 보셨습니까? – timothyclifford