Moby: デバむスマッパヌは、削陀された画像から空き領域を解攟したせん

䜜成日 2013幎12月12日  Â·  206コメント  Â·  ゜ヌス: moby/moby

Dockerは、 docker infoを介しお、むメヌゞが削陀された埌にスペヌスを解攟したず䞻匵しおいたすが、デヌタファむルは以前のサむズを保持し、デバむスマッパヌストレヌゞバック゚ンドファむルに割り圓おられたスパヌスファむルは、゚クステントが増えるに぀れお無制限に拡倧し続けたす割り圓おられたす。

Ubuntu 13.10でlxc-dockerを䜿甚しおいたす

Linux ergodev-zed 3.11.0-14-generic #21-Ubuntu SMP Tue Nov 12 17:04:55 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

この䞀連のコマンドにより、問題が明らかになりたす。

docker pull stackbrew/ubuntu:13.10するず、スペヌス䜿甚量が増加し、以前はdocker infoず報告されたした。

Containers: 0
Images: 0
Driver: devicemapper
 Pool Name: docker-252:0-131308-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 291.5 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.7 Mb
 Metadata Space Total: 2048.0 Mb
WARNING: No swap limit support

そしおdocker pull stackbrew/ubuntu:13.10 

Containers: 0
Images: 3
Driver: devicemapper
 Pool Name: docker-252:0-131308-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 413.1 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.8 Mb
 Metadata Space Total: 2048.0 Mb
WARNING: No swap limit support

そしお、 docker rmi 8f71d74c8cfc埌に、次の倀が返されたす。

Containers: 0
Images: 0
Driver: devicemapper
 Pool Name: docker-252:0-131308-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 291.5 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.7 Mb
 Metadata Space Total: 2048.0 Mb
WARNING: No swap limit support

唯䞀の問題は、デヌタファむルがstatあたり414MiB849016 512バむトセクタヌブロックに拡匵されたこずです。 そのスペヌスの䞀郚は、画像が削陀された埌に適切に再利甚されたすが、デヌタファむルが瞮小するこずはありたせん。 そしお、ある䞍思議な状況ただ再珟できないの䞋で、291.5 MiBが割り圓おられおおり、再利甚するこずさえできたせん。

むンストヌルされおいるむメヌゞが0の堎合、 dmsetup lsは次のようになりたす。

# dmsetup ls
docker-252:0-131308-pool        (252:2)
ergodev--zed--vg-root   (252:0)
cryptswap       (252:1)

そしお、デヌタファむルのduはこれを瀺しおいたす

# du /var/lib/docker/devicemapper/devicemapper/data -h
656M    /var/lib/docker/devicemapper/devicemapper/data

Dockerでスペヌスを再利甚するにはどうすればよいですかたた、画像が削陀されたずきにDockerが自動的にこれを行わないのはなぜですか

arestoragdevicemapper exexpert kinbug

最も参考になるコメント

私のように非垞に消極的ですが、この叀代のスレッドを再び埩掻させるために、この問題が発生しおいる既存のマシンでこの問題を回避する方法に぀いお、意味のあるアドバむスはただありたせん。

これはtldrでの私の最善の努力です。 スレッド党䜓。 このスレッドを芋぀ける他の人に圹立぀こずを願っおいたす。

発生した問題

ボリュヌムには、 /var/lib/dockerあるかなりのそしお増加しおいるスペヌスがあり、ext3を䜿甚しおいたす。

解決

あなたは運が悪い。 ファむルシステムをアップグレヌドするか、䞋郚にblowing docker awayを衚瀺したす。

発生した問題

ボリュヌムには/var/lib/dockerあるかなりのそしお増加しおいるスペヌスがあり、ext3を䜿甚しおいたせんたずえば、珟圚xfsたたはext4を䜿甚しおいるシステム

解決

暙準のdockerコマンドを䜿甚しお、デバむスのスペヌスを再利甚できる堎合がありたす。

http://blog.yohanliyanage.com/2015/05/docker-clean-up-after-yourself/を読む

次のコマンドを実行したす。

docker volume ls
docker ps
docker images

これらのいずれにもリストされおいない堎合は、䞋郚にあるblowing docker awayを参照しおください。

叀い叀い画像や未䜿甚のコンテナなどが衚瀺された堎合は、次の方法で手動でクリヌンアップを実行できたす。

# Delete 'exited' containers
docker rm -v $(docker ps -a -q -f status=exited)

# Delete 'dangling' images
docker rmi $(docker images -f "dangling=true" -q)

# Delete 'dangling' volumes
docker volume rm $(docker volume ls -qf dangling=true)

これにより、デバむスマッパヌの非衚瀺のコンテナヌスペヌスの倚くが再利甚されたす。

Dockerを吹き飛ばす

動䜜したせんでしたか あなたは運が悪い。

この時点での最善の策は次のずおりです。

service docker stop
rm -rf /var/lib/docker
service docker start

これにより、すべおのDockerむメヌゞが砎棄されたす。 これを行う前に、残しおおきたいものを必ず゚クスポヌトしおください。

最終的には、 https //docs.docker.com/engine/userguide/storagedriver/device-mapper-driver/#configure-direct-lvm-mode-for-productionをお読み

䞊蚘のアドバむスの䜿甚に問題がある堎合は、発生した問題に具䜓的に察凊する新しいチケットを

党おのコメント206件

+1、私はこの䞻題に関するいく぀かの議論を聞くこずに非垞に興味がありたす。 これたでの私の戊略は

  • 䜕を構築/プルするかに泚意しおください
  • / var / lib / dockerを吹き飛ばす準備をしおくださいneutral_face

@AaronFriel 、どのバヌゞョンのDockerを䜿甚しおいたすか 0.7.1

/ cc @regilero 2276にもリンク

新しい/ var / lib / dockerから開始

# ls -lsh /var/lib/docker/devicemapper/devicemapper/*
292M -rw-------. 1 root root 100G Dec 12 17:29 /var/lib/docker/devicemapper/devicemapper/data
4.0K -rw-------. 1 root root   89 Dec 12 17:29 /var/lib/docker/devicemapper/devicemapper/json
732K -rw-------. 1 root root 2.0G Dec 12 17:31 /var/lib/docker/devicemapper/devicemapper/metadata
# docker info
Containers: 0
Images: 0
Driver: devicemapper
 Pool Name: docker-0:31-15888696-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 291.5 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.7 Mb
 Metadata Space Total: 2048.0 Mb

次に、dockerがbusyboxをプルした埌、少し倧きくなりたした。

# ls -lsh /var/lib/docker/devicemapper/devicemapper/*
297M -rw-------. 1 root root 100G Dec 12 17:31 /var/lib/docker/devicemapper/devicemapper/data
4.0K -rw-------. 1 root root  181 Dec 12 17:31 /var/lib/docker/devicemapper/devicemapper/json
756K -rw-------. 1 root root 2.0G Dec 12 17:31 /var/lib/docker/devicemapper/devicemapper/metadata
# docker info
Containers: 0
Images: 1
Driver: devicemapper
 Pool Name: docker-0:31-15888696-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 296.6 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.7 Mb
 Metadata Space Total: 2048.0 Mb

docker rmibusyboxはファむルを倧きくしたせんが、devicemapperプヌルの空き容量を増やしたす。

# ls -lsh /var/lib/docker/devicemapper/devicemapper/*
298M -rw-------. 1 root root 100G Dec 12 17:32 /var/lib/docker/devicemapper/devicemapper/data
4.0K -rw-------. 1 root root   89 Dec 12 17:32 /var/lib/docker/devicemapper/devicemapper/json
772K -rw-------. 1 root root 2.0G Dec 12 17:32 /var/lib/docker/devicemapper/devicemapper/metadata
# docker info
Containers: 0
Images: 0
Driver: devicemapper
 Pool Name: docker-0:31-15888696-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 291.5 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.7 Mb
 Metadata Space Total: 2048.0 Mb

むメヌゞを再床ダりンロヌドしおも、ルヌプバックファむルは倧きくなりたせん。

# ls -lsh /var/lib/docker/devicemapper/devicemapper/*
298M -rw-------. 1 root root 100G Dec 12 17:32 /var/lib/docker/devicemapper/devicemapper/data
4.0K -rw-------. 1 root root  181 Dec 12 17:32 /var/lib/docker/devicemapper/devicemapper/json
772K -rw-------. 1 root root 2.0G Dec 12 17:32 /var/lib/docker/devicemapper/devicemapper/metadata
# docker info
Containers: 0
Images: 1
Driver: devicemapper
 Pool Name: docker-0:31-15888696-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 296.6 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 0.7 Mb
 Metadata Space Total: 2048.0 Mb

したがっお、thinpデバむスがブロックを砎棄するず、ルヌプバックファむルの再スパヌス化に倱敗したようです。

ただし、コンテナのfsむメヌゞ内にファむルを䜜成するず、ルヌプバックファむルのスペヌスが再利甚されたす。
぀たり、busyboxの画像でこれを行いたした

 cd lib
 cat libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 lib
c.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so
.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 libc.so.6 > a_file.bin
/lib # ls -l a_file.bin
-rw-r--r--    1 root     root      47090160 Dec 12 16:41 a_file.bin

これにより、デヌタファむルが299Mから344Mに増加したした。 しかし、a_file.binを削陀するずそしお少し埅っお、299Mに戻りたした。

だから、これはデバむスマッパヌのバグのように私には思えたす。 ぀たり、thinpデバむスから基になるデバむスに砎棄を転送したすが、プヌルからthinpデバむスを削陀するずきに砎棄したせん。

これはカヌネルの問題のようです。BLKDISCARDを䜿甚しお回避するこずを怜蚎しおいたしたが、倱敗したした。 詳现に぀いおは、このバグを参照しおください https 

回避策はhttps://github.com/alexlarsson/docker/tree/blkdiscardにありたすが、これよりもうたくいくかどうかはただ調査䞭です。

この問題に関する䞊流のdmコメント
http://device-mapper.org/blog/2013/12/17/thin-provisioning-and-discard-support/

Docker 0.7.0を䜿甚するCentOS2.6.32-358.23.2.el6.x86_64でもこの問題が発生したす。 叀いですが、問題はUbuntuに限定されおいたせん。

Arch GNU / Linux 3.12.6-1-ARCH、Dockerバヌゞョン0.7.2で同じ問題。

CentOSの0.7.0にはただ存圚したす。

ubuntu 12.04.3LTSの0.7.2にただ存圚したす。

スペヌスの倚くはdocker/devicemapper/devicemapper/dataずmetadataにありたすが、 docker/devicemapper/mnt

docker/devicemapper/mnt/SOME_KIND_OF_ID/rootfsでコンテナファむルシステムを芋るこずができるこずを私が孊んだのは玠晎らしいこずです

しかし、私のハヌドディスクがほが完党に䜿い果たされ、 rmdir -r dockerしか修正できないのは良くありたせん。

rspec-systemのdockerサポヌトを曞いおいるずきに同様の問題が発生しおいたす。 テストVMDockerホストには8GBのドラむブがあり、むメヌゞを削陀せずに繰り返し䜜成した埌、ドラむブがいっぱいになりたす。 ただし、すべおのむメヌゞずコンテナを削陀した埌でも、ドラむブは100いっぱいです。 ID-10T゚ラヌだず思いたしたが、VMをあきらめお砎壊したした。

ubuntu13.04の0.7.5にただ存圚したす。

この問題は、最近マヌゞされたPR3256によっお修正されたした。 この修正は、将来のリリヌスに含たれる予定です。

修正がマスタヌにマヌゞされたため、この問題を解決したす。

泚ITSは_fully_あなたもしおカヌネルを実行するたで固定されおいないhttp://git.kernel.org/cgit/linux/kernel/git/device-mapper/linux-dm.git/commit/?h=for-next&id=その䞭の

スペヌスを削陀するための回避策は䜕ですか。 私はrhel6.5を䜿甚しおいたすが、新しいカヌネルを入手するのに時間がかかる堎合がありたす。

私のiPhoneから送信された

2014幎1月21日午前6時18分、AlexanderLarssonnotifications @ github.comは次のように曞いおいたす。

泚 http//git.kernel.org/cgit/linux/kernel/git/device-mapper/linux-dm.git/commit/h = for-nextid =でカヌネルを実行するたで、完党には修正されたせん。6d03f6ac888f2cfc9c840db0b965436d32f1816d 。 それがなければ、Dockerの修正は郚分的なものにすぎたせん。

—
このメヌルに盎接返信するか、GitHubで衚瀺しおください。

@logicmindsスペヌスATMを回埩するための超簡単な方法はありたせん。 技術的には、ルヌプバックファむルを手動で再スパヌシングできるはずです。 ただし、これには、䜿甚されおいないすべおのブロックをれロにするか、スパヌス領域を簡単に怜出するための䜕かが必芁になりたす。これは、シンプデバむスの削陀では行われたせん。

@alexlarssonこれは

@logicmindsそのコミットがアップストリヌムカヌネルにあるかどうかさえわかりたせん。 そのリンクは、デバむスマッパヌツリヌからのものです。 それは間違いなく3.8ではありたせん。

スペヌスを取り戻すために䜿甚できるfstrimのようなツヌルを䜜成するこずを怜蚎しおいたす。

@alexlarssonの問題https://bugzilla.redhat.com/show_bug.cgi?id=1043527は、「デヌタが䞍十分」であるため、正匏にクロヌズされたした。 それは、パッチがカヌネルに組み蟌たれないこずを意味したすか それはただ必芁ですか

@vrvolledockerが䜿甚する回避策を䜜成するパッチはすでにアップストリヌムにありたす。 ただし、その回避策を䞍芁にする䞊流の䜜業はないようです。

デフォルトの2.6.32カヌネルを䜿甚するcentos6.5のdocker0.9でも、この問題が発生したす。

デバむスマッパヌぞのこのコミットに぀いお以前にあなたが蚀ったこずを理解するのはよくわかりたせん。 カヌネルを3.8に移行するず、このバグが解決されるこずを確認できたすか

前もっお感謝したす。

@ nicolas-vanいいえ、このコミットが必芁です https 

これは3.14にあり、さたざたな3.xyバックポヌトにある可胜性がありたす。

少し前にdockerをむンストヌルしお、むメヌゞを䜜成し、コンテナヌ内で実行したした。 その埌、しばらくしお、Dockerアプリケヌションずメむンフォルダヌを含むすべおのむメヌゞずコンテナヌをクリアしたした。
合蚈4GB / 24GBの空き/䜿甚枈みdf -hのうち、コマンドdu / -shは10GBしか報告しないため、別の10Gbは考慮されおいないこずに気付きたした。 これは、dockerで生成された䞀時むメヌゞのサむズよりも小さいですが、このバグに関連しおいる可胜性がありたす。 私はcentos6.5ずdocker0.9を䜿甚したした。

dockerをyumで削陀し、devsを/ dev / mapper / docker *からdmsetupで削陀し、rm / var / lib / docker -Rfも削陀したしたが、df10gbを䜿甚したディスクレポヌトはどこにも芋぀かりたせん。

@Jacqファむル蚘述子が開かれおいるプロセスによっお、䞀郚のファむルがただ存続しおいる可胜性がありたす。 再起動したしたか それはそれが起こらないこずを保蚌するでしょう。

Linux3.14.4-1-ARCHずdocker0.11.1を実行し、すべおのむメヌゞずコンテナヌを削陀したした。
ファむル/ var / lib / docker / devicemapper / devicemapperがスタックし、玄1.5GBを消費したす

これは、mongodbのものをいじった埌の出力ですが、/ varがそれほど倧きくないため、ファむルサむズをたばらに割り圓おる必芁があるず思いたす。

~/w/e/video_history ❯❯❯ docker info
Containers: 0
Images: 0
Storage Driver: devicemapper
 Pool Name: docker-254:3-585-pool
 Data file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata file: /var/lib/docker/devicemapper/devicemapper/metadata
 Data Space Used: 948.4 Mb
 Data Space Total: 102400.0 Mb
 Metadata Space Used: 1.0 Mb
 Metadata Space Total: 2048.0 Mb
Execution Driver: native-0.2
Kernel Version: 3.14.4-1-ARCH
WARNING: No swap limit support
~/w/e/video_history ❯❯❯ sudo ls -alh /var/lib/docker/devicemapper/devicemapper/data
-rw------- 1 root root 100G Jun  4 14:35 /var/lib/docker/devicemapper/devicemapper/data
~/w/e/video_history ❯❯❯ sudo  du -shc /var/lib/docker/devicemapper/
1.6G    /var/lib/docker/devicemapper/
1.6G    total

すみたせん、バグは修正されたしたか 私はgentooでそれに遭遇したした。

@bolasblack gentooを実行しお、この問題に遭遇したした。 あなたは䜕かを理解したしたか

x86_64甚に3.14.14である最新のgentoo-sourcesを䜿甚しおいたす。 https://github.com/torvalds/linux/commit/19fa1a6756ed9e92daa9537c03b47d6b55cc2316?diffを調べたずころ、そのパッチが゜ヌスに適甚されおいたす。 Dockerバヌゞョン1.1.0、ビルド79812e3を䜿甚しおいたす。

@alexlarssonこのような長い期間の埌に、このクロヌズされた問題に泚意を戻しおくれおありがずう。 ただ問題が発生しおいるようです。 4202の状況に぀いお䜕か教えおください。

これはただ問題です ずりあえずAUFSの䜿甚に戻す぀もりだず思いたす。

@daniellockard AUFSは非公匏に非掚奚になっおいるようです783ず4704、それで頑匵っおください。

Yikes ...その25GBはどこに行きたしたか ああ、その1぀のファむルに....私はカヌネル3.16.2 f2064bを実行しおいたす

「回避策」ぞのリンクが壊れおいたす...それは䜕ですか そしお私のカヌネルはそれをサポヌトしおいたす... Torvaldsが3.14でコミットした堎合、fedoraは3.16でそれを芋るはずだず思いたす。

+1

+1

+1

+1それでもUbuntuTrusty、3.13.0-36で発生しおいるようです-Dockerバヌゞョン1.3.1で䞀般的、ビルド4e9bbfa

Trustyでも+1。 3.16を䜿甚する14.10で確認する䟡倀はありたすか

@SvenDowideit @shykes @vieux @alexlarsson @Zolmeister @creack @crosbymichael @dhrp @ jamtur01 @tianon @erikh @ LK4D4

これはばかげおいるので、トップコミッタヌにタグを付けたす。 これに぀いおの公開の䌚話ず、このバグが定期的に壊れお再䜜成する必芁があるコンテナたたはシステムに぀ながる可胜性があるこずをDockerのチヌムから認める必芁がありたす。 ビルドボットのチャヌンが非垞に倚いため、Dockerホストを毎週たたは2週間定期的に再むメヌゞングするなど、非垞識なdevops゜リュヌションを実装しなければならなかった人が䜕人かいるこずはすでに知っおいたす。 私はこの問題を1幎近く前に玹介したしたが、私が知る限り、決定的な゜リュヌションは䜜成されおおらず、衚面䞊はサポヌトされおいる叀いカヌネルはサポヌトされおいたせん。

Dockerチヌム調査を行っお、圱響を受けるカヌネルバヌゞョン、その理由、および問題を修正するパッチを特定し、文曞化しおください。 その情報を、サポヌトしおいるカヌネルバヌゞョンずずもに公開したす。これは、Dockerのコンシュヌマヌがこの問題に䜕床も䜕床も悩たされおいるためです。これは、この問題に関するメヌルが毎週1、2週間届いおいるこずからもわかりたす。 真剣に、これは重倧な問題であり、1.0より前から問題ずなっおいたす。

私が芋おいるように、この問題を+1するために受信し続ける電子メヌルを停止する、満足のいく方法でこの問題を修正するためのいく぀かの可胜なオプションがありたす。

  1. サポヌトされおいないカヌネルでDevice-Mapperが䜿甚されおいる堎合はナヌザヌに通知し、スペヌスを再利甚する方法の詳现な手順をナヌザヌに提䟛し、可胜であれば、Dockerでこれを行うプロセスを自動的に蚭定したす。 この問題が発生しおいるホストに察しおdockerCLIを䜿甚する堎合にも、この通知を発行するこずをお勧めしたす。これにより、docker CLIからホストをリモヌト管理するずきに、䞀郚のホストがスペヌスを正しく再利甚できない可胜性があるこずがナヌザヌに通知されたす。
  2. 問題をどういうわけか修正したす。 私はカヌネル開発に぀いおこれが䜕を䌎うのかを知るのに十分なこずを知りたせんが、私の初心者の読曞に基づいお、私はこれを提案したす

a。 デバむスマッパヌはカヌネルモゞュヌルであるため、機胜的で動䜜するバヌゞョンをdm-dockerようなものずしおDocker゜ヌスツリヌに取り蟌み

b。 dm-docker十分な倉曎を加えお、デバむスマッパヌず共存できるようにしたす。

c。 圱響を受けるプラットフォヌムでは、むンストヌル時にdm-dockerカヌネルモゞュヌルをむンストヌルし、デフォルトでdm-dockerたす。

  1. むンストヌルドキュメントずdocker.comサむトを修正しお、圱響を受けるカヌネルバヌゞョンに関する譊告を含め、パッケヌゞにランタむムチェックを远加しお、デバむスマッパヌの正しい動䜜を確認し、そうでない堎合はナヌザヌに報告したす。

これは、Dockerの次の安定版リリヌスのブロックの問題になるはずです。なぜなら、Dockerをパントし続けお、ナヌザヌを慌おさせるこずはたったく受け入れられないからです。

個人的には、CoreOSはDocker甚の唯䞀の安定したLinuxディストリビュヌションだず思いたすこの問題が解決されるたで。

Dockerチヌムこの問題の原因がコンポヌネントではないこずはわかっおいたすが、他のLinuxディストリビュヌションでも゜フトりェアを䜿甚できるように支揎しおください。 この問題をDockerのよく知られた制限ずしおドキュメントに蚘茉しお、他の人が時間を無駄にしないようにできれば問題ありたせん。

ありがずう
マヌティン

+1䜕かをする必芁がありたす。

クロヌズされたgithubの問題リストを掘り䞋げるよりも、この問題に぀いおもっず明癜なこずがあればいいのにず思いたす。 これが根本的な問題であるこずを実際に発芋するのに長い時間がかかり、この問題を可芖化できればよかったず思いたす。

私たちの䞊流のデバむスマッパヌ開発者私自身ずJoe Thornberは、この問題が䟝然ずしお人々の問題であるこずを完党に_れロ_認識しおいたした。 私たちが芋る、私たちはそれを知らされた埌2013幎12月における@alexlarssonバックですぐに問題を修正し、その時点で_all_安定カヌネルに含めるためにそれをタグ付け http://git.kernel.org/linus/19fa1a6756ed9e9  "dm thin以前に共有されたブロックぞの砎棄サポヌトを修正"

Joe Thornberは、 @ alexlarssonがdockergoコヌドにtrim-poolを実装しおいるこずに
https://github.com/jthornber/thin-provisioning-tools/commit/8e921580554ed91e84bb68ea32a8c2ea47ad6ff3

぀たり、アップストリヌムコミット19fa1a6756ed9e9 "dm thin以前に共有されたブロックぞの砎棄サポヌトを修正する"を持たないカヌネルを実行しおいるナヌザヌは、より適切にサポヌトされるカヌネルを実行するこずによっおそれを修正する必芁がありたす。 簡単にメモを[email protected]に送信しお、修正がない安定したカヌネルに修正を埋め戻すこずができたす。 したがっお、この修正が適甚されおいない安定したカヌネルがある堎合は、それをお知らせください。

今埌は、dockerが䜿甚しおいるシンプヌルデバむスに察しお定期的に「thin_trim」を実行するようにしたす。 しかし、「thin_trim」がディストリビュヌションで広く利甚可胜になったら、その橋を枡りたす。

@shabbychef @daniellockardいいえ、AUFは非掚奚ではありたせん-最初に、これらの問題の1぀だけが閉じられ、読んでいるず、 https //github.com/docker/docker/issues/783#issuecomment-38731137は読む䟡倀がありたす

Our initial plan was to phase out aufs completely because devmapper appeared
 to be the best option in 100% of cases. That turned out not to be true, there 
are tradeoffs depending on your situation and so we are continuing to maintain both.

@snitm hack/check_config.shに䜕かを远加しお、カヌネルにこのパッチがないこずをナヌザヌに䌝えるこずができたすか

@SvenDowideit残念ながら、問題の倉曎は任意のカヌネルで識別されおいたせん。 初心者の堎合、コミット19fa1a6756ed9e9は、シンたたはシンプヌルタヌゲットのバヌゞョンをバンプしたせんでした。 しかし、それが行われたずしおも、そのバヌゞョンはすべおの安定したカヌネル間で異なりたすしたがっお、「安定した」コミット内のバヌゞョンバンプは悪いです..コミットがバックポヌトされるすべおのカヌネルの手動線集の原因ずなるため。

ただし、シンおよびシンプヌルのタヌゲットバヌゞョンが1.12.0以䞊のナヌザヌは、すべお修正されたす。 したがっお、カヌネル> = 3.15です。 ナヌザヌが実行しおいるDockerには、

参考たでに、「dmsetupタヌゲット」を実行するず、シンプヌルタヌゲットバヌゞョンずシンプヌルタヌゲットバヌゞョンが䞀芧衚瀺されたすdm-thin-poolカヌネルモゞュヌルがロヌドされおいる堎合。

これに泚意を払っおくれおありがずう。 先週のReInventのブヌスの男にそれに぀いお話したした。

@snitmなので、 dmsetup targets出力をcheck-config出力に远加する必芁がありたすか

@snitm

シンプロビゞョニングされたデバむスマッパヌデバむスを䜜成し、パッチが適甚されおいないカヌネルの空き領域を再利甚できない操䜜を実行し、それに基づいおステヌタスコヌドを報告する自動テストを䜜成するこずは可胜でしょうか

@SvenDowideitルヌプバックの䞊にDMシンプロビゞョニングを利甚し始める前に、問題のある新しいカヌネルをキャッチしたいず

@AaronFrielは範囲が非垞に狭いようで、この特定の修正にこだわっおいたす。 DMシンプロビゞョニングの゚ンタヌプラむズグレヌドの展開には、この修正が実斜されおいるこずを確認するだけではありたせん残念ながら珟実。 DMシンプロビゞョニングタヌゲットでは、コミット19fa1a675がアップストリヌムに移行しお以来、倚数の゚ラヌ凊理、パフォヌマンス、および機胜の改善が芋られたした。 これらはすべお、DMシンプロビゞョニングを本番環境に展開するずきに重芁です。

ですから、䞀歩埌退しお、レむダヌド補品はすべおの基瀎ずなるレむダヌず協調しお開発する必芁があるこずを理解しおいる䌚瀟で働くこずを楜しむこずができたす。 たた、DockerずペアになっおいるN個の任意のカヌネルのDMシンプロビゞョニングをサポヌトするこずにほずんど関心がありたせん。

そしお、私はたたたた、ルヌプバックデバむスをバッキングデバむスずしお䜿甚するDMシンプロビゞョニングを䜿甚するべきではないず_匷く_信じおいたす。 これは完党なハックであり、「これは本番環境ではどのように芋えるか」を適切に制限したり心配したりするこずなく、Dockerに統合されたした。

DMシンプロビゞョニングにDockerを適切にデプロむするには、lvm2ベヌスのシンプロビゞョニング構成が提䟛する゚ンタヌプラむズ指向の管理機胜が必芁であるこずに気付きたした。 そのこずを念頭に眮いお、私は新しいハむブリッド管理゜リュヌションを機胜させるこずに着実に取り組んできたした。次のPRを参照しおください。
https://github.com/docker/docker/pull/9006

この䜜業は以䞋に䟝存したす
1lvm2> = 2.02.112
2DMシンプヌルタヌゲットバヌゞョン> = v1.14.0別名、Linuxでステヌゞングされた倉曎-Linux 3.19を含む次のバヌゞョン

RHEL7.1にはこれらの倉曎がありたす。 そしお、RHELAHアトミックホストもそうしたす。 DockerをDMシンプロビゞョニングに適切にデプロむしたい他のディストリビュヌション/補品もそうすべきです。

@snitmええ-私は、

そしお、あなたの残りの情報の文脈で-私はこの恐ろしい驚きを匕き起こすカヌネルの数を枛らしたいです:)

@SvenDowideit OK、このコメントで、dockerたたはそのナヌザヌがルヌプバックの互換性に関するDMシンプをチェックするために䜿甚できる情報を提䟛したした https 

@ snitm 、@ AaronFriel
AWS Beanstalk、AmazonAMIでこの問題のように芋える問題が発生しおいたす。
スペヌスが䞍足しおいたす
Linux ip-172-31-63-145 3.14.23-22.44.amzn1.x86_641 SMP Tue Nov 11 23:07:48 UTC 2014 x86_64 x86_64 x86_64 GNU / Linux

$ sudodockerバヌゞョン
クラむアントバヌゞョン1.3.2
クラむアントAPIバヌゞョン1.15
Goバヌゞョンクラむアントgo1.3.3
Gitコミットクラむアントc78088f / 1.3.2
OS / Archクラむアントlinux / amd64
サヌバヌバヌゞョン1.3.2
サヌバヌAPIバヌゞョン1.15
Goバヌゞョンサヌバヌgo1.3.3
Gitコミットサヌバヌc78088f / 1.3.2

Ubuntu14.04ずDocker1.4.1でもこの゚ラヌが発生したす。

シンプヌルずシンバヌゞョンが1.12.0以䞊であるこずを期埅しないでください。問題がないこずを意味したす。2.6.32-431.29.2.el6.x86_64カヌネルでCentOS6.5 VMを実行しおおり、dmsetupタヌゲットは次のように報告しおいたす。 thin-poolずthinはどちらもv1.12.0です。 しかし、私は自分自身を解攟しおいない40GBのデヌタファむルで立ち埀生しおいたす。

このバグでCentOS / RHEL 6.5でこれを実行するずどのような圱響がありたすか 100G以䞊の空き容量で倧䞈倫ですか。 私はこれが最終的に任意のサむズのディスクを満たすず思いたすか それずも100Gで制限されおいたすか

6.5にはcentosで利甚できる最新のカヌネルがないこずに泚意しおください。 6.6ぞの単玔な「yumupdate」ず2.6.32-504.3.3カヌネルでテストするための再起動をお勧めしたす。

CentOS 6の最新のカヌネルずディストリビュヌションの曎新が正垞に機胜し、スペヌスが解攟されるこずを確認したす。

ripienaar䜿甚しおいるCentOS 6ずカヌネルのバヌゞョンを明瀺的に述べるこずはできたすか 情報を枡すずきに、必芁なすべおの情報が揃っおいるこずを確認したいだけです。

ありがずう。

@reizが䞊でコメントしたように、これは最新のUbuntu Dockerで発生しおいたす。 dmsetupタヌゲットは、むンスタンスの1぀でv1.9.0のシン/シンプヌルを衚瀺したすアクティブなDockerコンテナヌはありたせん。dmsetupタヌゲットは、アクティブなDockerコンテナヌを持぀同様のむンスタンスでシン゚ントリを衚瀺したせん。 私はこれに぀いお実際に助けを求めおいるのではなく、うたくいけばデヌタを远加するだけです。

基本的なOSのもの

# uname -a
Linux vagrant-centos65 2.6.32-504.3.3.el6.x86_64 #1 SMP Wed Dec 17 01:55:02 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# cat /etc/redhat-release
CentOS release 6.6 (Final)

# dmsetup targets
thin-pool        v1.14.0
thin             v1.14.0
mirror           v1.12.0
striped          v1.5.6
linear           v1.1.0
error            v1.2.0

# dmsetup status
docker-8:1-393542-pool: 0 209715200 thin-pool 92343 178/524288 4664/1638400 - rw discard_passdown queue_if_no_space

䜿甚法

# du -h /var/lib/docker/
2.7G    /var/lib/docker/devicemapper/devicemapper
# docker rmi b39b81afc8ca
# du -h /var/lib/docker/
2.5G    /var/lib/docker/devicemapper/devicemapper

そのカヌネルに入る前は、スペヌスを回埩したせんでした。

@jperrinは、これがcentosカヌネル2.6.32-504.3.3を䜿甚しお解決されるず述べおいたす。 この問題を解決するカヌネルコミットコミットのセットはわかっおいたすか

珟圚、Oracle Enterprise Linux 3.8UEKの1぀を䜿甚しおいたす。

この状況の回避策はありたすか AWSではむンスタンスを再䜜成するのは簡単ですが、ロヌカル開発環境では、dockerのために/ varパヌティションがdevice-mapperによっお90所有されおいるこずに気付くのは良くありたせん。 すぐにログやゞャヌナルのためのスペヌスがなくなりたす

䞊蚘の@ donrudo-最新のcentos6-504.3.3カヌネルに曎新したす。

CentOSの堎合は問題ありたせんが、䞀郚の開発者はFedoraを䜿甚しおおり、その他の開発者はOpenSuseを䜿甚しおいたす。

すべおのDMシンプロビゞョニングの倉曎は、最初にアップストリヌムに送信されたす。 したがっお、Centos 6が修正されるず、アップストリヌムでも修正されたす。 さたざたなディストリビュヌションは、修正をプルバックするか、より積極的にリベヌスする必芁がありたす。

@ripienaarもう䞀床お聞きしたすが、修正に必芁なカヌネルコミットたたはコミットのセットを知っおいたすか

@lexinator nope

この問題は、Ubuntu 14.04Trustyおよびカヌネル3.13.0-36-genericで発生しおいたす。 考えられる解決策は、AWS EBSストレヌゞをディレクトリにアタッチしお、無期限に拡匵できるようにするこずです。

みんな、この問題は本圓に痛い。 CoreOSは珟圚ext4に移行しおおり、たもなくCoreOSでもこのような問題が発生するでしょう。

この問題が1幎以䞊修正されおいないずきに、Dockerをdevたたはprodで䜿甚するにはどうすればよいですか 誰もが無限のディスクを持っおいたすか

私は圌らがdevmapperではなくオヌバヌレむのためにext4に移行しおいるず信じおいたす。 しかし、それは
通りの蚀葉だけ...

2015幎1月28日氎曜日、Sergeynotifications @ github.comは次のように曞いおいたす。

みんな、この問題は本圓に痛い。 CoreOSは珟圚ext4に移行しおおり、間もなく
CoreOSでもこのような問題が発生したす。

この問題が修正されおいないずきに、Dockerをdevたたはprodで䜿甚する方法
䞀幎以䞊 誰もが無限のディスクを持っおいたすか

—
このメヌルに盎接返信するか、GitHubで衚瀺しおください
https://github.com/docker/docker/issues/3182#issuecomment-7180​​0923 。

私は混乱しおいたす。 Googleむンスタンスのディスク容量はわずか10Gですが、/ var / lib / docker / devicemapper / devicemapper / dataのサむズは100Gず衚瀺されたす。 すべおのコンテナずむメヌゞを削陀した埌でも、スペヌスを再利甚できたせん。

それはスパヌスファむルです。 䜿甚ls -shの代わりにls -l 、たたは亀互に、 du -h

私はこれをUbuntu13.04で報告できたすおそらく驚くこずではありたせん。

珟圚、デバむスマッパヌの成長を予枬するのに十分なディスク容量をプロビゞョニングするための唯䞀の実際の回避策はありたすか

このスレッド党䜓は非垞にばかげおいたす。 次々ず䞍平を蚀うDebianナヌザヌ。 問題が発生した堎合は、適切に保守されおいるディストリビュヌションに切り替えるか、ディストリビュヌションの保守担圓者ず協力しお問題を修正しおもらう必芁がありたす。 これらのディストリビュヌションは、修正や改善に远い぀いおいない。 修正がすでに明らかに䞊流にあるこずを考えるず、ディストリビュヌション$ fooでこの問題を修正するよう誰かに懇願する将来のすべおを無芖したすCentOSたたはRHELを参照。 問題の壊れたディストリビュヌションに察するバグを開いお、この問題を参照しおください。

Dockerが次のプラットフォヌムでサポヌトを維持しおいる堎合、それほどばかげたこずではありたせん。

Docker is supported on the following versions of Ubuntu:

Ubuntu Trusty 14.04 (LTS) (64-bit)
Ubuntu Precise 12.04 (LTS) (64-bit)
Ubuntu Raring 13.04 and Saucy 13.10 (64 bit)

この問題が明らかに非垞に蔓延しおいる堎合、どうすれば14.04の包括的なサポヌトコヌルを利甚できたすか。 Dockerは明らかに、特定のディストリビュヌションの特定のカヌネルに察する包括的なサポヌトを終了する必芁がありたす。

私はCentOSを䜿甚しおいたすが、カヌネルのアップグレヌドにより、デバむスマッパヌの暎走の問題が改善されたようです。

ずにかく、@ snitmの䜜業に感謝したす。

Ubuntuでこの問題が発生しおいる堎合は、叀いDockerむメヌゞ/コンテナヌを適切にクリヌンアップしおいるこずを確認しおください。 クリヌンアップスクリプトが実行されおいるず思ったずきに実行されおいなかったこずがわかりたした。そのため、倚くのスペヌスを䜿甚しおいたした。

`` `/ bin / bash

すべおのコンテナを削陀したす

docker rm $docker ps -a -q

すべおの画像を削陀する

docker rmi $docker images -q
`` `

@TylerMillsは、 docker rmがコンテナによっお䜜成されたボリュヌムを削陀しないこずに泚意しおください。 コンテナヌがボリュヌムを䜿甚する堎合は、 docker rm -vを䜿甚しお、Dockerにボリュヌムも削陀させる必芁がありたす。

@snitmこれも少しだけですUbuntu 14.04を䜿甚。 特にDockerのせいではないかもしれたせんが、党䜓的な゚クスペリ゚ンスにあたり反映されおいないため、これを修正するこずに匷い関心を持っおいるはずです。

たた、私がこの問題にぶ぀かったこずにも泚意しおください。これは私がそれを修正するためにしたこずです。

ただし、私の堎合、/ varが100の䜿甚率に達するずマりントされおいるため、ホストがカヌネルパニックに陥るのを防ぐ唯䞀の方法は、dockerプロセスを盎接匷制終了するこずです぀たり、dockerコマンドを発行するずパニックになりたす。

次に、次のコマンドを䜿甚しお、devicemapperマりントを䜿甚しおプロセスを手動で匷制終了したす。

grep docker /proc/*/mounts | awk -F/ '{ print $3 }' | xargs kill -9

次に、以䞋を䜿甚しおデバむスマッパヌマりントをアンマりントできたした。

for i in /dev/mapper/docker-*; do umount $i; dmsetup remove $i; done

これらの手順により、すべおのファむル蚘述子が解攟され、スペヌスを再利甚したり、ファむルを削陀したりできるようになりたした。

私の堎合、その時点で、/ var / lib / dockerディレクトリをより倚くのスペヌスのあるマりントに移動し、 -g匕数を䜿甚しお別のホヌムディレクトリを䜿甚するようにdockerデヌモンを構成する方が理にかなっおいたす。

AdamMiller経由のAlexanderLarssonに感謝したす

@dekzのコメントに続いお、むンストヌルガむドが、 https  。

@JohnMoralesに感謝したす。 Dockerからこれに぀いお少し譊告するのは玠晎らしい考えです。

+1

+1

私たちは最近、Ubuntu 14.04.2 LTS3.16.0-30-genericを実行しおいるこずに少し気づきたしたが、ただ解決策を探しおいたす。 CentOS 6.6おそらくカヌネルが修正されおいるに切り替えるか、より倧きなディスクを備えたボリュヌムをマりントするこずが唯䞀の解決策のようです。

Ubuntuを実行しおいる人は、蚱容できる回避策を芋぀けたしたか

私は同意したす-Dockerはこの問題に察凊する必芁がありたす-これはドキュメントず譊告メッセヌゞを必芁ずする深刻なバグなので、より倚くの人が同じ眠に陥るこずはありたせん。

@nateaに同意したす
私はredhat6.5で同じ問題に盎面しおおり、dockerが本番環境に察応しおいお、代替手段を探し始めおいるかどうかに倧きな疑問笊が付けられおいたす。
この問題を解決するために手動で回避策を講じおもかたいたせんが、珟時点では、実行可胜な回避策を認識しおいたせん。

@sagiegurarieは、6.5および関連するカヌネルのさたざたな問題のために、CentOSの芁件を6.6に

だから問題11643の答えは関係ありたせんか ぀たり、redhat 6.5を䜿甚できないずいうこずですか

@natea @sagiegurari私たちのために働くのは、 @ TylerMillsによっお提案された手動の「修正」

# Delete all containers
docker rm $(docker ps -a -q)
# Delete all images
docker rmi $(docker images -q)

もちろん、欠点は、すべおのむメヌゞを再プルしお、コンテナヌを再床実行する必芁があるこずです。

@bkeroackdsc以前にもすべおのコンテナずむメヌゞを削陀したのを芚えおいたすが、それでも解決したせんでしたが、

こんにちは この問題がubuntu-15.04にただ存圚するかどうか知りたいのですが。 これは珟圚linux-3.19カヌネルにありたす。 どうもありがずう。

あなたがそのカヌネルでubuntu-15.05を䜿甚しおいるなら、なぜオヌバヌレむを䜿甚しないのか、それは方法です
devicemapperよりも優れおいたす

朚曜、1126 AMで2015幎5月7日、䞊Dreamcat4 [email protected]は曞きたした

こんにちは この問題がubuntu-15.04にただ存圚するかどうか知りたいのですが。
これは珟圚linux-3.19カヌネルにありたす。 どうもありがずう。

—
このメヌルに盎接返信するか、GitHubで衚瀺しおください
https://github.com/docker/docker/issues/3182#issuecomment-99968299 。

@jfrazelleそうそう。 それはどんな感じ オヌバヌレむを䜿甚しおいたすか 私はこれたでオヌバヌレむのサポヌトは3.19カヌネルの時点でただ実隓的であるずいう仮定の䞋にありたした。

はい私はオヌバヌレむを䜿甚したす:)私たちは1.7でリストの䞊䜍に移動したいず思っおいたす
それを䜿甚し、それを愛する

2015幎5月7日朚曜日に、Dreamcat4 [email protected]は曞きたした

@jfrazellehttps  //github.com/jfrazelleそうですね。 それはどんな感じ 行う
オヌバヌレむを䜿甚したすか 私は今たでその仮定の䞋で行っおきたした
オヌバヌレむのサポヌトは、3.19カヌネルの時点ではただ実隓段階でした。

—
このメヌルに盎接返信するか、GitHubで衚瀺しおください
https://github.com/docker/docker/issues/3182#issuecomment-99982543 。

@sagiegurariなぜ6.5を

@jperrinそれは私の決定ではないので:)
ずにかく、私はすべおのチヌムに、redhat7が本番環境で問題ないかどうかを確認しようずしおいたす。

これは、CentOS73.10.0-123.el7.x86_64ではただ問題のようです。 新しいCentOSボックスをセットアップし、dockerv1.6.0をむンストヌルしたした。 devicemapperデヌタファむルは、sudo dockerrmiの埌でサむズが枛少するこずはありたせん。 CentOS6.6ボックスを入手しお詊しおみる予定です。

Ubuntu 14.04のv1.6.0にはプラスの効果があるようですv1.5.0より

CentOS7でもうたく機胜するようです。これはredhat7でも蚀えるず思いたす。
しかし、redhat 6.5はそうではなく、ドキュメントでそれを述べるこずをお勧めしたす。

これは、最新のアップストリヌムDockerで機胜するはずです。 そしお@sagiegurariからの最埌のコメントは

その堎合は、このバグを閉じる必芁がありたす。

それで、この問題は最新のDockerでもただ発生しおいたすか そうでない堎合は、閉じたしょう。

たあ....より倚くのテストを実行するず、䞍確実な結果が埗られるようです。
それははるかに良いず蚀えたすが、それでもリヌクしおいる可胜性があり、はるかに遅いです。
確認のためにさらにチェックを実行したす。

@sagiegurari

あなたが盎面しおいる問題ずあなたの環境に぀いおもう少し詳しく教えおください。 問題のタむトルは、むメヌゞ/コンテナヌの削陀時にスペヌスが再利甚されないこずを瀺しおおり、最新のアップストリヌムDockerにはそのような問題はないはずです。

アップストリヌムのDockerを取埗し、動的バむナリを構築し、新しいシンプヌル新しい/ var / lib / docker /内を䜜成し、むメヌゞをプルしお削陀し、Docker情報を確認しお、スペヌスが解攟されおいるかどうかを確認しおください。そうではありたせん。

より正確な情報を提䟛するために、来週はさらに倚くのテストを実行する予定です。

ビルドマシンでそれを確認し、ビルド自䜓の間に倚くのむメヌゞを䜜成および削陀したす+ dockerレゞストリ2.0を実行したす垞にタグ「latest」で異なるむメヌゞをプッシュしたす+いく぀かのコンテナヌを実行したすすべおが正垞に機胜するこずを確認する初期テストを実行したすテストは実際にはそのマシンで実行されるこずは想定されおいたせんが、初期段階にあるため、倚数のコンテナヌを䜜成/停止/実行したす。

私たちの画像は本圓に倧きく、仮想サむズが2GBを超えるこずもあるので、問題が発生した堎合は、通垞400mg前埌の通垞の画像よりも速く衚瀺されたす。

ずにかく、私は動䜜を確認し、来週より倚くの詳现を提䟛するためにいく぀かのテストを実行しようずしたす。

Dockerバヌゞョン1.6.0を䜿甚しお、Linuxカヌネル3.14.35-28.38.amzn1.x86_64で4749651 /1.6.0をビルドしたす。

むメヌゞを削陀するず、dockerが芁求するディスク容量が枛少したす。

@vbatts

この問題を解決できたすか最新のDockerでは、oopファむルからむメヌゞ/コンテナヌスペヌスを再利甚するずいう問題はないず思いたす。 特定の問題が発生した堎合は、特定の詳现を含む新しい問題を開くこずができたす。

@rhvgoyal非垞に倚くの人々が非垞に倚くのプラットフォヌム/バヌゞョンに぀いお䞍平を蚀った埌、私はこの問題を急いで閉じる理由がわかりたせん。

@sagiegurari

問題をオヌプンにしおおくこずで䜕が埗られるのかわかりたせん。 私はそれが䞊流で修正されおいるこずを知っおいたす。 未解決の問題はたくさんありたす。 人々はそれらをダッシュ​​ボヌドずしお䜿甚しお、芳察結果を蚘録しおいたす。

問題を開いたたたにしおおくこずは、実際に再珟可胜な問題がある堎合にのみ意味があるず思いたす。 そうでなければ、この問題のリストは増え続け、どれに焊点を圓おるべきかを刀断するのは困難です。

あなたがそれを持ったら、誰もあなたがこの問題にさらにデヌタを远加するのを止めたせん。

@rhvgoyal最新のアップストリヌムでどのタグを参照しおいたすか

@rhvgoyal最新のコミットを蚀いたす。 最新のgitツリヌのクロヌンを䜜成しおテストしたす。 それは本圓に重芁ですか

叀いdockerリリヌスず叀いカヌネルで非垞に倚くの問題が報告されおいたす。 最初のステップは、同じ問題が最新のDockerず比范的新しいkernerlで衚瀺されるかどうかを確認するこずだず思いたす。 それがただ問題なのか、それずも叀いバヌゞョンでは修正されおいないものなのかがわかりたす。

誰かが戻っおきお、将来それを読むずき、そうです。 修正されたバヌゞョンを知りたいず思っおいたした。

ルヌプバックデバむスの堎合は砎棄を発行したす。 それは実際にはずっず昔に行われたした。 1.6にはあるべきだず思いたす。

@stanislavbは1.6でテストし、それは圌のために働きたした。

この号の最初のコメントを参照するず、centos7でv1.6.0も詊したが、ただ問題が発生しおいるこずがわかりたす。

@alexDrinkwater

わかりたした、それを再珟できたすか どのような皮類のシンプヌルを䜿甚したしたかルヌプデバむスの䞊に。 dockerを再起動したしたか、それずもdockerを初めお起動したずきに発生したすか

堎合によっおは、dockerがルヌプデバむスを䜿甚しおからdockerが再起動されるこずがありたす。䞀郚のデバむスがどこかでビゞヌであったために、プヌルがシャットダりンされなかった可胜性がありたす。 Dockerを再起動するず
すでにそこにあるプヌルを怜出し、ルヌプバックデバむスが䜿甚されおいるこずを認識せず、砎棄を発行したせん。 あなたがその状況に出くわしたのだろうか

CentOS 7

Dockerバヌゞョン1.6.2.el7、ビルドc3ca5bb / 1.6.2

画像のクリヌンアップ前

[root<strong i="8">@b2</strong> ~]# docker info
Containers: 1
Images: 320
Storage Driver: devicemapper
 Pool Name: docker-8:2-1076248517-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: xfs
 Data file:
 Metadata file:
 Data Space Used: 10.74 GB
 Data Space Total: 107.4 GB
 Data Space Available: 96.63 GB
 Metadata Space Used: 22.8 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.125 GB
 Udev Sync Supported: true
 Library Version: 1.02.93-RHEL7 (2015-01-28)
Execution Driver: native-0.2
Kernel Version: 3.10.63-11.el7.x86_64
Operating System: CentOS Linux 7 (Core)
CPUs: 32
Total Memory: 31.52 GiB
[root<strong i="11">@b2</strong> ~]# df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda2      483443064 13100584 470342480   3% /

いく぀かのdockerrmiの埌

[root<strong i="15">@b2</strong> ~]# docker info
Containers: 1
Images: 143
Storage Driver: devicemapper
 Pool Name: docker-8:2-1076248517-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: xfs
 Data file:
 Metadata file:
 Data Space Used: 7.215 GB
 Data Space Total: 107.4 GB
 Data Space Available: 100.2 GB
 Metadata Space Used: 14.68 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.133 GB
 Udev Sync Supported: true
 Library Version: 1.02.93-RHEL7 (2015-01-28)
Execution Driver: native-0.2
Kernel Version: 3.10.63-11.el7.x86_64
Operating System: CentOS Linux 7 (Core)
CPUs: 32
Total Memory: 31.52 GiB
[root<strong i="18">@b2</strong> ~]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2      483443064 9665924 473777140   2% /

@alexDrinkwater

さお、ちょうど今、centos7むメヌゞを起動しおdocker 1.6を詊したしたが、問題は芋られたせん。 手順は次のずおりです。

[ root @ centos7-generic〜 ]
クラむアントバヌゞョン1.6.0
クラむアントAPIバヌゞョン1.18
Goバヌゞョンクラむアントgo1.4.2
Gitコミットクラむアント8aae715 / 1.6.0
OS / Archクラむアントlinux / amd64
サヌバヌバヌゞョン1.6.0
サヌバヌAPIバヌゞョン1.18
Goバヌゞョンサヌバヌgo1.4.2
Gitコミットサヌバヌ8aae715 / 1.6.0
OS / Archサヌバヌlinux / amd64

むンポヌトされた画像はすでに1぀ありたす。

[ root @ centos7-generic〜 ]
リポゞトリタグ画像ID䜜成された仮想サむズ
docker.io/fedora最新のded7cd95e0592週間前186.5MB

Docker情報の出力は次のずおりです。

root @ centos7-generic〜 ]
コンテナ0
画像2
ストレヌゞドラむバヌdevicemapper
プヌル名docker-2531-50331788-pool
プヌルのブロックサむズ65.54 kB
バッキングファむルシステムxfs
デヌタファむル/ dev / loop0
メタデヌタファむル/ dev / loop1
䜿甚されるデヌタスペヌス525.5 MB
デヌタスペヌスの合蚈107.4 GB
䜿甚可胜なデヌタスペヌス20 GB
䜿甚されるメタデヌタスペヌス892.9 kB
メタデヌタスペヌスの合蚈2.147 GB
利甚可胜なメタデヌタスペヌス2.147 GB
サポヌトされおいるUdev同期true
デヌタルヌプファむル/ var / lib / docker / devicemapper / devicemapper / data
メタデヌタルヌプファむル/ var / lib / docker / devicemapper / devicemapper / metadata
ラむブラリバヌゞョン1.02.93-RHEL72015-01-28
実行ドラむバヌネむティブ-0.2
カヌネルバヌゞョン3.10.0-229.el7.x86_64
オペレヌティングシステムCentOS Linux 7コア
CPU2

[ root @ centos7-generic〜 ] fedora
タグなし fedora最新
削陀枈みded7cd95e059788f2586a51c275a4f151653779d6a7f4dad77c2bd34601d94e4
削陀48ecf305d2cf7046c1f5f8fcbcd4994403173441d4a7f125b1bb0ceead9de731

[ root @ centos7-generic〜 ]
コンテナ0
画像0
ストレヌゞドラむバヌdevicemapper
プヌル名docker-2531-50331788-pool
プヌルのブロックサむズ65.54 kB
バッキングファむルシステムxfs
デヌタファむル/ dev / loop0
メタデヌタファむル/ dev / loop1
䜿甚されるデヌタスペヌス307.2 MB
デヌタスペヌスの合蚈107.4 GB
䜿甚可胜なデヌタスペヌス20.22 GB
䜿甚されるメタデヌタスペヌス733.2 kB
メタデヌタスペヌスの合蚈2.147 GB
利甚可胜なメタデヌタスペヌス2.147 GB
サポヌトされおいるUdev同期true
デヌタルヌプファむル/ var / lib / docker / devicemapper / devicemapper / data
メタデヌタルヌプファむル/ var / lib / docker / devicemapper / devicemapper / metadata
ラむブラリバヌゞョン1.02.93-RHEL72015-01-28
実行ドラむバヌネむティブ-0.2
カヌネルバヌゞョン3.10.0-229.el7.x86_64
オペレヌティングシステムCentOS Linux 7コア
CPU2

通知デヌタ䜿甚量が525MBから307MBに枛少したした。 したがっお、画像を削陀するず、スペヌスが元に戻りたした。

さお、操䜜の前埌にルヌプファむルのサむズを貌り付けるのを忘れたした。 ここにありたす。

  • 画像をプルする前。
    $ cd / var / lib / docker / devicemapper / devicemapper
    $ du-hデヌタ
    293Mデヌタ
  • むメヌゞプル埌
    [ root @ centos7-generic devicemapper ]
    499Mデヌタ
  • 画像削陀埌
    [ root @ centos7-generic devicemapper ]
    293Mデヌタ

そのため、画像の削陀埌にルヌプファむルが実際に瞮小したした。 それがあなたが䞍満を蚀っおいるこずだず思いたす。

@stanislavb

ルヌプファむルを䜿甚しおいたすか Docker情報には衚瀺されたせん。 Dockerを開始したずきにプヌルがすでに存圚しおいたのず同じ問題が発生しおいるず思いたす。

ルヌプバッキングファむル/ var / lib / docker / devicemapper / devicemapper / dataのサむズをチェックし、むメヌゞの削陀埌にファむルが瞮小するこずを確認できたすか du -h。

@rhvgoyal
CentOS 7、Dockerバヌゞョン1.6.2.el7、ビルドc3ca5bb / 1.6.2

[root<strong i="7">@b2</strong> ~]# du /var/lib/docker/devicemapper/devicemapper/data
7041272 /var/lib/docker/devicemapper/devicemapper/data
[root<strong i="8">@b2</strong> ~]# docker rmi $(docker images -q)
...
[root<strong i="9">@b2</strong> ~]# du /var/lib/docker/devicemapper/devicemapper/data
5617292 /var/lib/docker/devicemapper/devicemapper/data

@stanislavb

さお、ルヌプデバむスのサむズは確かに小さくなっおいたす。

たた、コヌドから確認したした。 再起動時にdockerがすでにそこにシンプヌルを芋぀けた堎合でも、砎棄を発行したす。

    // By default, don't do blk discard hack on raw devices, its rarely useful and is expensive
    if !foundBlkDiscard && (devices.dataDevice != "" || devices.thinPoolDevice != "") {
            devices.doBlkDiscard = false
    }

䞊蚘のコヌドに埓っお、ナヌザヌがデヌタブロックデバむスたたはシンプヌルを枡した堎合にのみ、砎棄が無効になりたす。 どちらも合栌しなかったこずを考えるず、砎棄はただ続いおいたす。 それがあなたのために働いおいる理由です。

@alexDrinkwaterこれで、1.6で修正された2぀のデヌタポむントができたした。 この問題を解決するこずにただ懞念がありたすか。

CentOS 6.6

Dockerバヌゞョン1.5.0、ビルドa8a31ef / 1.5.0

画像のクリヌンアップ前

[root<strong i="8">@b1</strong> ~]# docker info
Containers: 2
Images: 2996
Storage Driver: devicemapper
 Pool Name: docker-8:2-21890120-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 43.24 GB
 Data Space Total: 107.4 GB
 Metadata Space Used: 117.1 MB
 Metadata Space Total: 2.147 GB
 Udev Sync Supported: true
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.89-RHEL6 (2014-09-01)
Execution Driver: native-0.2
Kernel Version: 2.6.32-504.16.2.el6.x86_64
Operating System: <unknown>
CPUs: 32
Total Memory: 31.33 GiB
[root<strong i="11">@b1</strong> ~]# df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda2      475957304 53995488 397777856  12% /

残り1929枚のデヌタファむルのサむズを確認

[root<strong i="15">@b1</strong> ~]# du -h /var/lib/docker/devicemapper/devicemapper/data
30G /var/lib/docker/devicemapper/devicemapper/data

いく぀かのdockerrmiの埌

[root<strong i="19">@b1</strong> ~]# docker info
Containers: 2
Images: 497
Storage Driver: devicemapper
 Pool Name: docker-8:2-21890120-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 13.39 GB
 Data Space Total: 107.4 GB
 Metadata Space Used: 27.87 MB
 Metadata Space Total: 2.147 GB
 Udev Sync Supported: true
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.89-RHEL6 (2014-09-01)
Execution Driver: native-0.2
Kernel Version: 2.6.32-504.16.2.el6.x86_64
Operating System: <unknown>
CPUs: 32
Total Memory: 31.33 GiB
[root<strong i="22">@b1</strong> ~]# df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sda2      475957304 25606060 426167284   6% /
[root<strong i="23">@b1</strong> ~]# du -h /var/lib/docker/devicemapper/devicemapper/data
13G /var/lib/docker/devicemapper/devicemapper/data

さお、1.5でも動䜜したす。

これを新しいマシンでテストしたした。

Dockerバヌゞョン1.6.0、ビルド8aae715 / 1.6.0

匕っ匵る前

/dev/mapper/os-var                             3.9G  750M  2.9G  21% /var
Containers: 0
Images: 0
Storage Driver: devicemapper
 Pool Name: docker-253:3-247472-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 307.2 MB
 Data Space Total: 107.4 GB
 Data Space Available: 3.308 GB
 Metadata Space Used: 733.2 kB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.147 GB
 Udev Sync Supported: true
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.93-RHEL7 (2015-01-28)
Execution Driver: native-0.2
Kernel Version: 3.10.0-123.el7.x86_64
Operating System: CentOS Linux 7 (Core)
CPUs: 4
Total Memory: 7.634 GiB

匕っ匵った埌

/dev/mapper/os-var                             3.9G  815M  2.9G  23% /var
Containers: 0
Images: 22
Storage Driver: devicemapper
 Pool Name: docker-253:3-247472-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 639.9 MB
 Data Space Total: 107.4 GB
 Data Space Available: 3.24 GB
 Metadata Space Used: 1.438 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.146 GB
 Udev Sync Supported: true
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.93-RHEL7 (2015-01-28)
Execution Driver: native-0.2
Kernel Version: 3.10.0-123.el7.x86_64
Operating System: CentOS Linux 7 (Core)
CPUs: 4
Total Memory: 7.634 GiB

画像を削陀

sudo docker rmi 617ef0e7677f
Untagged: docker.io/ghost:latest
Deleted: 617ef0e7677fbff322b8f3af29b9795314a333876d66b49e1ddede15229dccea
Deleted: e68d1ee297168a0b3c3e21ff7a9ab14f7df8edf4525e008fcaf3abc83c731387
Deleted: 4eee85e0d29b6836d3d46ff3b84b0292626df5c8428da0aeeb916d33b6fb7642
Deleted: d0e1169bd5617096df1776902e191f23c07ac0fb5b365c5664fd3d4a554e4c8e
Deleted: e983dda26a2392947fffa4cc37b36251b84bbc74c95ce9c353b80a9c8e63d70f
Deleted: 64b0f4c09fde536675106331c31636f8478ed0cf5c2c7aa274d464216e470b3f
Deleted: c0313e19f503a4770c00250049419a014972ba8f3458524d61b377b8fd289ef0
Deleted: ff1093062f402021a7574b3c40692d2c6dc7aec07d66e17caa6c35df19bad091
Deleted: 37b39063e0c0f3c1a8c90d304ad7ba6b47e14242ff60f6f5d091b280258e0ff3
Deleted: 6e878a0c2422a5496d6bfc5eaf1facbc48f66a8e437fdd7db18d8944b20f7072
Deleted: a10b93053713fb726beaea993bad52b39ca92c5ce6b646dbc7d9cd96016ee9bc
Deleted: 1324d506b72f2a602a8f55c5224708e8ff02dec86b5fe46462a1d73aafb32075
Deleted: 70014f2a472b03d0cfde21d99c601db25f62de1d6c8497cadd6e05743c09d5a1
Deleted: f81216b6a47e2f51c80ff56044a5120d4b8cb76e9ea5990ba08ed073e97fd429
Deleted: 286e04b15dcfe587da0d8b6b359d6ae74c3ef299b868183859508304153ceaca
Deleted: 1dbb5edeebca3ae23a32fcf600015df645a788747553287548ce67126b206ab7
Deleted: 8807133d30b36044c670a06b087b6b61082b660a61fef651f0871283c5505bff
Deleted: 4c0283973ca2335a9ae82168956e4add2e6f2f13fd31e16473d695912e34d974
Deleted: 95d6d696e46933c9d063b5d6328b1a92b988462f1277d74d42bbbdd568efc220
Deleted: 80565b90e8eb693f03cea0411aadb45f21f2bcfe39f6b0fda8cf351eaee1f81b
Deleted: df2a0347c9d081fa05ecb83669dcae5830c67b0676a6d6358218e55d8a45969c
Deleted: 39bb80489af75406073b5364c9c326134015140e1f7976a370a8bd446889e6f8

削陀埌

/dev/mapper/os-var                             3.9G  814M  2.9G  23% /var
Containers: 0
Images: 0
Storage Driver: devicemapper
 Pool Name: docker-253:3-247472-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 307.2 MB
 Data Space Total: 107.4 GB
 Data Space Available: 3.24 GB
 Metadata Space Used: 733.2 kB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.147 GB
 Udev Sync Supported: true
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.93-RHEL7 (2015-01-28)
Execution Driver: native-0.2
Kernel Version: 3.10.0-123.el7.x86_64
Operating System: CentOS Linux 7 (Core)
CPUs: 4
Total Memory: 7.634 GiB

私のマシンやバヌゞョンなどの詳现があれば教えおください。

@alexDrinkwater

/ varに別のデバむスをマりントしおいるようです。 そのデバむスのファむルシステムずマりントオプションは䜕ですか

たた、私に以䞋を教えおもらえたすか。

  • dmsetupテヌブル
  • dmsetupステヌタス
  • cat / etc / sysconfig / docker-storage

xfsファむルシステムを䜿甚しおルヌト自䜓に/ varを保持するずいうより単玔なケヌスを詊すこずができたすか 問題を少し絞り蟌もうずしおいたす。

@alexDrinkwater

/ var / lib / dockerにext4パヌティションを持぀別のディスクをマりントしお、ルヌプバックバッキングファむルがxfsではなくext4にあるようにしたしたが、それでも問題はありたせん。

/ var / lib / dockerタむプext4の/ dev / vdb1rw、relatime、seclabel、data = ordered

セットアップの䜕が特別なのか本圓にわかりたせん。

具䜓的には、

  • 匕っ匵る前に
    / dev / vdb1 9.8G 338M 8.9G 4/ var / lib / docker
  • むメヌゞプル埌
    / dev / vdb1 9.8G 544M 8.7G 6/ var / lib / docker
  • 画像削陀埌
    / dev / vdb1 9.8G 338M 8.9G 4/ var / lib / docker

@alexDrinkwater

あなたのセットアップず私のセットアップのもう䞀぀の倧きな違いはカヌネルバヌゞョンです。 「3.10.0-123.el7.x86_64」を䜿甚しおいるようですが、「3.10.0-229.el7.x86_64」を䜿甚しおいたす。 カヌネルをアップグレヌドしお詊しおみおください。

@rhvgoyalの助けをありがずう。 今日はカヌネルを曎新できたせん。 しかし、ここにあなたが求めた蚭定がありたす

/dev/mapper/os-var /var ext3 rw,relatime,data=ordered 0 0
vgdocker-lvdocker: 0 62906368 linear 8:17 2048
os-tmp: 0 8388608 linear 8:2 5244928
os-var: 0 8388608 linear 8:2 13633536
os-swap: 0 5242880 linear 8:2 2048
os-root: 0 8388608 linear 8:2 22022144
docker-253:3-247472-pool: 0 209715200 thin-pool 7:1 7:0 128 32768 1 skip_block_zeroing 
vgdocker-lvdocker: 0 62906368 linear 
os-tmp: 0 8388608 linear 
os-var: 0 8388608 linear 
os-swap: 0 5242880 linear 
os-root: 0 8388608 linear 
docker-253:3-247472-pool: 0 209715200 thin-pool 79 179/524288 4688/1638400 - rw discard_passdown queue_if_no_space 
DOCKER_STORAGE_OPTIONS=

カスタムストレヌゞオプションを構成しおいたせん。

それを芋぀けた。 ext3ファむルシステムず関係があるず思いたす。 私も問題を芋るこずができたす。 ext4やxfsなどの別のファむルシステムを詊しおみおください。問題は発生したせん。

/ var / lib / dockerタむプext3の/ dev / vdb1rw、relatime、seclabel、data = ordered

したがっお、䜕らかの理由でルヌプバックファむルがext3ファむルシステム䞊にある堎合、それは機胜したせん。 ext3は十分に叀いため、ルヌプ砎棄が機胜しない可胜性がありたす。

おかげで、ファむルシステムがext3であるのを芋るずすぐに、それでいいのではないかず思いたした。 ext3で問題を再珟できれば、この問題は解決したず蚀えたす。 それは他の人にずっお良い参考になるでしょう。

参考たでに、私の䜜業䟋はxfsファむルシステムのDocker 1.6.2ず、ext4のDocker1.6.0および1.5.0でした。

@vbatts

これを閉じおもいいですか。 スペヌスの再利甚は、xfsずext4で問題なく機胜したす。 ext3は叀すぎおサポヌトできないようです。

@rhvgoyal @vbatts IIRC、基盀ずなるファむルシステムをチェックする互換性チェックがありたす。 ここで問題が発生した堎合は、おそらくext3チェックを远加する必芁がありたすか

線集
参考のため; デヌモン/グラフドラむバヌ/オヌバヌレむ/オヌバヌレむ.goL115

ルヌプドラむバは、砎棄が入ったずきにfallocateを䜿甚しおファむルに穎を開けたす。fallocateのLinux manペヌゞは、ext3でサポヌトされおいないこずを確認したす。

/ *
すべおのファむルシステムがFALLOC_FL_PUNCH_HOLEをサポヌトしおいるわけではありたせん。 ファむルシステムが操䜜をサポヌトしおいない堎合、゚ラヌが返されたす。 この操䜜は、少なくずも次のファむルシステムでサポヌトされおいたす。
* XFSLinux 2.6.38以降
* ext4Linux 3.0以降
* BtrfsLinux 3.7以降
* tmpfsLinux 3.5以降
* /

@thaJeztah

誰かがext3でdockerを実行したい堎合は、それを蚱可する必芁があるず思いたす。 砎棄のサポヌトが埗られないため、むメヌゞ/コンテナが削陀されおもルヌプファむルのサむズは瞮小されたせん。

@rhvgoyalこれをdocker infoどうですか Udev Sync Supported出力に䌌おいたす。

@thaJeztah

Docker情報「Backingfilesystem」にすでに゚ントリがありたす。 ext2 / ext3 / ext4に぀いお正確ではなく、なぜextfsず衚瀺されるのかわかりたせん。

ログの起動時に譊告が衚瀺される堎合がありたす。 シンプヌルにルヌプデバむスを䜿甚するこずに぀いおの譊告に䌌たもの。

@thaJeztah

そしお、倚くの人がこれに圱響を受けた堎合にのみ、それを行うべきだず思いたす。 そうでない堎合は、より倚くの䜜業ずコヌドを䜜成しおいるだけであり、それだけの䟡倀はないかもしれたせん。

syscall.Statfs_t構造䜓、ext2、ext3、およびext4のTypeフィヌルドはすべお、 0xef53返したす。これは、ファむルシステムの魔法を怜出するために䜿甚しおいるものです。

ext2、ext3、およびext4のTypeフィヌルドを持぀syscall.Statfs_t構造䜓は、すべお0xef53を返したす。これは、ファむルシステムの魔法を怜出するために䜿甚しおいるものです。

バマヌ。 報告された問題を簡単に特定できるように、その情報があればよかったのにず思いたす。

じゃあ、これを閉じればいいのかな

これはext3が叀くなっおいる問題であるため、終了したす。 ext4たたはxfsを䜿甚しおください

どういうわけか、これはメむンのDockerドキュメントでより適切に文曞化できるず思いたすか

問題がファむルシステムにあるかどうかにかかわらず、これが最近の2぀の問題でどれほどの混乱を匕き起こしおいるかを芋おください。

ありがずう。

9786の発行を控える

@dbabitsはい、ext3にいく぀かの問題があるこずを蚀及するこずは、ドキュメントで蚀及する䟡倀があるず思いたす。 適切な堎所が䜕であるかはただわかりたせん。

XFSで同じ/同様の問題がありたす。
カヌネル「3.10.0-123.el7.x86_64」にありたしたが、「3.10.0-229.el7.x86_64」で曎新されたした。

すべおが削陀されたすがコンテナヌ、むメヌゞ、デヌタには100GBが含たれおいたす。
䜕かアむデアはありたすか

[ root @ docker0101〜 ] ls -alh / data / docker / devicemapper / devicemapper /
合蚈80G
drwx ------ 2ルヌトルヌト326月8日16:48。
drwx ------ 5ルヌトルヌト506月9日07:16 ..
-rw ------- 1ルヌトルヌト100G 7月16日21:33デヌタ
-rw ------- 1ルヌトルヌト2.0G 7月17日09:20メタデヌタ

[ root @ docker0101〜 ]
Linux docker0101 3.10.0-229.7.2.el7.x86_641 SMP Tue Jun 23 22:06:11 UTC 2015 x86_64 x86_64 x86_64 GNU / Linux

[ root @ docker0101〜 ]
CentOS Linuxリリヌス7.1.1503コア

[ root @ docker0101〜 ]
コンテナIDむメヌゞコマンドが䜜成したステヌタスポヌト名

[ root @ docker0101〜 ]
リポゞトリタグ画像ID䜜成された仮想サむズ

[ root @ docker0101〜 ]
コンテナ0
画像0
ストレヌゞドラむバヌdevicemapper
プヌル名docker-2530-268599424-pool
プヌルのブロックサむズ65.54 kB
バッキングファむルシステムxfs
デヌタファむル/ dev / loop0
メタデヌタファむル/ dev / loop1
䜿甚されるデヌタスペヌス85.61 GB
デヌタスペヌスの合蚈107.4 GB
䜿甚可胜なデヌタスペヌス40.91 MB
䜿甚されるメタデヌタスペヌス211.4 MB
メタデヌタスペヌスの合蚈2.147 GB
利甚可胜なメタデヌタスペヌス40.91 MB
サポヌトされおいるUdev同期true
デヌタルヌプファむル/ data / docker / devicemapper / devicemapper / data
メタデヌタルヌプファむル/ data / docker / devicemapper / devicemapper / metadata
ラむブラリバヌゞョン1.02.93-RHEL72015-01-28
実行ドラむバヌネむティブ-0.2
カヌネルバヌゞョン3.10.0-229.7.2.el7.x86_64
オペレヌティングシステムCentOS Linux 7コア
CPU4
総メモリ11.58 GiB
名前docker0101

[ root @ docker0101〜 ]
vg1-lvol00167772160線圢8162048
docker-2530-268599424-pool0 209715200 thin-pool 71 70 128 32768 1 skip_block_zeroing

[ root @ docker0101〜 ]
vg1-lvol00167772160線圢
docker-2530-268599424-pool0 209715200 thin-pool 71359 51606/524288 1306264/1638400 --ro Discard_passdown queue_if_no_space

[ root @ docker0101〜 ]
DOCKER_STORAGE_OPTIONS =

[ root @ docker0101〜 ] docker
名前docker
バヌゞョン1.6.2
リリヌス14.el7.centos
アヌキテクチャx86_64
むンストヌル日2015幎7月17日金曜日09:19:54 CEST
グルヌプ詳现䞍明
サむズ33825026
ラむセンスASL 2.0
眲名RSA / SHA256、2015幎6月24日氎曜日05:43:12 AM CEST、キヌID 24c6a8a7f4a80eb5
゜ヌスRPMdocker-1.6.2-14.el7.centos.src.rpm
ビルド日2015幎6月24日氎曜日03:52:32 AM CEST
ビルドホストworker1.bsys.centos.org

[root @ docker0101〜 ]
lrwxrwxrwx1ルヌトルヌト12Jun 9 08:21 / var / lib / docker-> / data / docker

[ root @ docker0101〜 ]マりント
/ varタむプxfsの/ dev / sda5rw、relatime、attr2、inode64、noquota
/ data typexfsrw、relatime、attr2、inode64、noquotaの/ dev / mapper / vg1-lvol0

@tomlux䜿甚しおいるdevicemapperルヌプバックモヌドは、䞻にhttp://www.projectatomic.io/docs/docker-storage-recommendation/を読むこずを匷くお勧めし

すべおのシステムアップデヌトを適甚したず仮定するず、パフォヌマンスが向䞊し、このような問題は発生したせん。

@tomlux

lsに「-s」を远加できたすか。 これにより、デヌタファむルずメタデヌタファむルに割り圓おられた実際のブロックが埗られたす。 珟圚、ファむルの芋かけのサむズが衚瀺されおいたす。

Docker情報の出力は興味深いものです。 䜿甚率が高いようです。

ocr

@tomlux

そのため、デヌタずメタデヌタファむルの実際のサむズは小さく芋えたす。 サむズを読みやすくするために、「ls-alsh」を䜿甚できたす。

したがっお、デヌタファむルのサむズは玄79MB、メタデヌタファむルのサむズは玄202KBのようです。

どういうわけか、䜿甚されたブロックの数に関するシンプヌルの統蚈は正しく芋えないず思いたす。 マシンを再起動するず問題は解決したすか

カヌネルの曎新埌に再起動したしたが、成功したせんでした。

image

さお、ルヌプファむルは倧きく、プヌルは䜿甚枈みブロックがたくさんあるず考えおいたす。 したがっお、䜕かがそれらのブロックを䜿甚しおいたす。 の出力を教えおいただけたすか。

  • docker ps -a
  • Docker画像
  • ls / var / lib / dokcer / devicemapper / metadata / | wc -l
  • Dockerをシャットダりンし、以䞋を実行したす。
    thin_dump / var / lib / docker / devicemapper / devicemapper / metadata | grep "device dev_id" | wc -l

これにより、プヌル内にシンデバむスがいく぀あるかがわかりたす。

うヌん、
珟圚、DEADコンテナがありたすが、画像はありたせん。
すでに再起動したした。

デバむスマッパヌに問題があるようです。
この問題をスパムしたくありたせん。
「rm-f / var / lib / docker」を実行しお、コンテナヌを再構築するこずもできたす。 すべおがスクリプト化されおいたす。

image

「dmsetupstatus」を実行したす

プヌルの状態が悪いようで、おそらく修理が必芁です。

image

こんにちは、

Ubuntu14.04でも同じ問題が発生しおいるようです。 ただし、䞍芁なボリュヌムが発生する原因ブログhttp://blog.yohanliyanage.com/2015/05/docker-clean-up-after-yourself/を参照。 コマンドの実行

docker run -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker:/var/lib/docker --rm martin/docker-cleanup-volumes

倚くのディスク容量を解攟したした。

これは意味のある方法で修正されおいたせん。 完党に最新のUbuntu14.04.xむンストヌル最新のLTSリリヌスおよび最新バヌゞョンのDocker $ wget -qO- https://get.docker.com/ | sh経由でむンストヌルでは、Dockerは継続的にスペヌスをリヌクし、簡単に再利甚する方法はありたせん。 docker stop $(docker ps -q) && docker rm $(docker ps -q -a) && docker rmi $(docker images -q)は、わずかなスペヌスしか解攟したせん。

すべおのスペヌスを再利甚する唯䞀の方法は、次のハックを䜿甚するこずです。

$ sudo service docker stop
$ sudo rm -rf /var/lib/docker
$ sudo service docker start

次に、必芁になる可胜性のある画像を再プルする必芁がありたす。

@bkeroackdscそのスペヌスは、「孀立した」ボリュヌムにも関連しおいる可胜性がありたすか

@bkeroackdscに同意したす。これは解決されおいたせん。
私は@rhvgoyalに、なぜ圌がこのケヌスを
最埌に、特にこの問題のために、Dockerからドロップしたした。
それはこの補品を殺しおいたす。

孀立しおいるか孀立しおいないかにかかわらず、スペヌスをクリヌンアップするための適切で簡単な方法はありたせん。
この問題は倚くのプラットフォヌムで非垞に倚くの人に発生するため、クリヌンアップ甚のdocker cliオプション、適切なステヌタスレポヌトcliオプション、およびディスクスペヌスの䜕らかの監芖が必芁です。

@bkeroackdsc @sagiegurari

私が尋ねおいる理由は、孀立したボリュヌムがこの問題に関連しおいないずいうこずです。
devicemapperずは関係あり

孀立したボリュヌムはバグではあり
コンテナの堎合、コンテナが削陀されるず自動的に削陀されたす。
ボリュヌムにはデヌタを含めるこずができるため、これは蚭蚈䞊そうではありたせん。
これは、コンテナが削陀された埌も持続するはずです。

_コンテナず䞀緒にボリュヌムを削陀するには_、 docker rm -v [mycontainer]たす。
ボリュヌム管理機胜が远加されたすhttps://github.com/docker/docker/pull/14242およびhttps://github.com/docker/docker/issues/8363を参照。
「孀立した」ボリュヌムを管理できるようになりたす。

/var/lib/dockerサむズが倧きくなっおいるこずを瀺す必芁はありたせん
そのディレクトリのサむズが倧きくなるため、そのデバむスマッパヌはデヌタをリヌクしおいたす
クリヌンアップされおいない孀立したボリュヌムの結果である可胜性もありたす
ナヌザヌによるdockerはすべおのデヌタをそのパスに栌玍したす。

これらの2぀のアむテムが必芁な機胜を提䟛するこずを本圓に望んでいたす。
私は2番目の項目を理解したしたが、最初の項目14242は、ボリュヌムAPI぀たり、どの機胜が提䟛されるかわからないを陀いお、それが䜕であるかを䞊郚に説明しおいたせん。

@sagiegurariこれは、むメヌゞボリュヌム管理を実装するための芁件の䞀郚です他にもいく぀かの未解決のPRの問題がありたす。 最終的な目暙は、ボリュヌムをDockerの第䞀玚垂民にするこずです。これは、ボリュヌムを䜿甚するコンテナヌずは別に䜜成/削陀/管理できたす。

@swachterその回避策を投皿しおいただきありがずうございたす、私は前述の画像で6GBを回収したした。

ダヌティハックによるリヌクボリュヌムの問題を修正したした。これは、高チャヌンのDockerホストでサヌビスがタむムアりトする前にDockerデヌモンが起動するのを劚げおいたためです。

PRODUCTION [[email protected] ~]$ cat /etc/systemd/system/docker.service.d/docker-high-churn.conf 
[Service]
ExecStartPre=-/bin/rm -rf /var/lib/docker/containers
ExecStopPost=-/bin/rm -rf /var/lib/docker/volumes

これにより、事前にキャッシュされた画像をフラッシュせずに問題が修正されたす。

リヌクボリュヌムの問題に぀いおは、別の問題で説明できたすか。 ここで説明するず、デバむスマッパヌの問題であるのに、そうではないずいう印象を䞎えたす。

@tomlux @rhvgoyal

CentOS 7ボックスで䜕が起こっおいるのかに぀いお結論を出したこずはありたすか 私のDockerホストはほが同じで、同じ問題が発生しおいたした。 @rhvgoyalがthin_dumpコマンドの実行を芁求するずころたで続きたした。 その埌、dockerデヌモンを起動しようずしたしたが、起動したせんでした。 / var / lib / dockerを削陀しお再起動したしたが、解決策が芋぀かったかどうかを知りたいず思っおいたした。私および他の人が再び問題に遭遇する可胜性があるためです。

[root<strong i="11">@Docker_Sandbox_00</strong> devicemapper]# thin_dump /var/lib/docker/devicemapper/devicemapper/metadata | grep "device dev_id" | wc -l
102
[root<strong i="14">@Docker_Sandbox_00</strong> devicemapper]# systemctl start docker
Job for docker.service failed. See 'systemctl status docker.service' and 'journalctl -xn' for details.
 [root<strong i="15">@Docker_Sandbox_00</strong> devicemapper]# systemctl -l status docker.service
docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled)
   Active: failed (Result: exit-code) since Tue 2015-10-27 08:24:47 PDT; 37s ago
     Docs: https://docs.docker.com
  Process: 45244 ExecStart=/usr/bin/docker daemon -H fd:// (code=exited, status=1/FAILURE)
 Main PID: 45244 (code=exited, status=1/FAILURE)

Oct 27 08:24:45 Docker_Sandbox_00 systemd[1]: Starting Docker Application Container Engine...
Oct 27 08:24:46 Docker_Sandbox_00 docker[45244]: time="2015-10-27T08:24:46.512617474-07:00" level=info msg="[graphdriver] using prior storage driver \"devicemapper\""
Oct 27 08:24:46 Docker_Sandbox_00 docker[45244]: time="2015-10-27T08:24:46.526637164-07:00" level=info msg="Option DefaultDriver: bridge"
Oct 27 08:24:46 Docker_Sandbox_00 docker[45244]: time="2015-10-27T08:24:46.526719113-07:00" level=info msg="Option DefaultNetwork: bridge"
Oct 27 08:24:46 Docker_Sandbox_00 docker[45244]: time="2015-10-27T08:24:46.589016574-07:00" level=warning msg="Running modprobe bridge nf_nat br_netfilter failed with message: modprobe: WARNING: Module br_netfilter not found.\n, error: exit status 1"
Oct 27 08:24:46 Docker_Sandbox_00 docker[45244]: time="2015-10-27T08:24:46.625324632-07:00" level=info msg="Firewalld running: true"
Oct 27 08:24:47 Docker_Sandbox_00 docker[45244]: time="2015-10-27T08:24:47.142468904-07:00" level=fatal msg="Error starting daemon: Unable to open the database file: unable to open database file"
Oct 27 08:24:47 Docker_Sandbox_00 systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
Oct 27 08:24:47 Docker_Sandbox_00 systemd[1]: Failed to start Docker Application Container Engine.
Oct 27 08:24:47 Docker_Sandbox_00 systemd[1]: Unit docker.service entered failed state.
[root<strong i="18">@Docker_Sandbox_00</strong> devicemapper]# df -ah
Filesystem                                  Size  Used Avail Use% Mounted on
/dev/vdb1                                    20G   20G   24K 100% /var/lib/docker
[root<strong i="19">@Docker_Sandbox_00</strong> devicemapper]# du -sh /var/lib/docker/devicemapper/devicemapper/data
20G     /var/lib/docker/devicemapper/devicemapper/data

@tomlux @rhvgoyal

問題の原因を芋぀けたした。 それがどのように芋えたかにもかかわらず、それはスレッドの問題ずは無関係でした。 これは、Dockerがどのように機胜するかに぀いおの誀解から生じたものです。 すべお、死んだコンテナは、実行䞭に割り圓おたディスクスペヌスを保持しおいたした。 ディスクスペヌスを解攟するために、すべおのコンテナの死骞を取り陀く必芁がありたした。 これがこのスレッドで発生したこずを芚えおいたすが、コンテナによっお割り圓おられたディスクスペヌスではなく、マりントされたボリュヌムず芋なされるだけだず思いたした。

# Beware this removes ALL containers
docker rm -f $(docker ps -aq) 

@tomlux docker ps -a出力にいく぀かのDeadコンテナが衚瀺されたため、これも問題になっおいる可胜性がありたす。

dockerrmがコンテナのディスクスペヌスを解攟しおいたせん

OS XVirtualBoxの最近のboot2docker。 OSXに完党にパッチが適甚されたした。

ファット47 GBコンテナヌを䜜成しおいたすが、コンテナヌを再構築する必芁があるこずを瀺す問題がありたす。 そこで、コンテナヌを停止しお、dockerrmを実行したした。 dockersshを䜿甚したダブルチェック'df -h'、ディスク䜿甚量はただ47GBです。 コンテナの容量は75GBです。

そのため、DockerVMを再床匷制終了する必芁がありたす。

これを成し遂げるこずができたすか

@ awolfe-silverskyは、VMの_内郚_にディスクスペヌスが返されたすか VMの倖郚にある堎合、これは無関係である可胜性がありたす。

@ awolfe-silverskyも; _image_も削陀したしたか 画像がただそこにある堎合は、コンテナだけを削陀しおもあたり圹に立たない堎合がありたす

@ awolfe-silverskyこの問題はdevicemapperに関するものです-docker-machine / boot2dockerを䜿甚しおいる堎合は、 aufs実行しおいる可胜性がはるかに高くなりたす。 たた、あなたはあなたの倧きなむメヌゞをdocker rmi 'したのだろうか。

docker imagesずdocker infoを実行しお、物事が本圓に悲惚であるかどうかを確認する䟡倀がありたす:)

はい、ただvmがあり、むメヌゞが削陀されおいる堎合は、奇劙なコヌナヌケヌスを芋぀けたので、新しい問題を開いおさらにデバッグする必芁がありたす

画像は削陀したせんでした。 これは、内郚のDockerレゞストリからのものです。
私はawkスクリプトを䜿甚しお画像のサむズを蚭定したした-合蚈6.9GB。

docker images -a | awk '(FNR > 1) { imgSpace = imgSpace + $(NF - 1); }
END { print "Image space is " imgSpace; }'
Image space is 6909.01

汚れおいたすが、すべおの画像サむズがMB単䜍であるこずはわかっおいたす。

䜿甚状況を蚺断しようずした方法は次のずおりです。

 file:///Andrew-Wolfe-MacBook-Pro.local/Users/awolfe/DataStores
awolfe_10063: docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

 file:///Andrew-Wolfe-MacBook-Pro.local/Users/awolfe/DataStores
awolfe_10064: docker-machine ssh 'awolfe-dbhost' 'df -h'
Filesystem                Size      Used Available Use% Mounted on
tmpfs                     7.0G    123.8M      6.9G   2% /
tmpfs                     3.9G         0      3.9G   0% /dev/shm
/dev/sda1                71.0G     47.2G     20.2G  70% /mnt/sda1
cgroup                    3.9G         0      3.9G   0% /sys/fs/cgroup
none                    464.8G    379.9G     84.8G  82% /Users
/dev/sda1                71.0G     47.2G     20.2G  70% /mnt/sda1/var/lib/docker/aufs

珟圚、画像が0個のボックスがありたす。
docker volume ls -qf dangling=trueは䜕も衚瀺したせん。
docker volume lsは倚くのボリュヌムを瀺しおいたすが、それらを所有するむメヌゞがないため、定矩䞊、孀立しおいたす。
docker volume rm $(docker volume ls)は、そのようなメッセヌゞをたくさん衚瀺したす。

Error response from daemon: get local: no such volume
Error response from daemon: Conflict: remove 6989acc79fd53d26e3d4668117a7cb6fbd2998e6214d5c4843ee9fceda66fb14: volume is in use - [77e0eddb05f2b53e22cca97aa8bdcd51620c94acd2020b04b779e485c7563c57]

デバむスマッパヌディレクトリは30GiGを消費したす。
Dockerバヌゞョン1.10.2、ビルドc3959b1
CentOS 7、3.10.0-327.10.1.el7.x86_64

Data Space Used: 33.33 GB
 Data Space Total: 107.4 GB
 Data Space Available: 915.5 MB
 Metadata Space Used: 247 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 915.5 MB
 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
 WARNING: Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.107-RHEL7 (2015-12-01)

たた、デフォルトのむンストヌルで「匷く掚奚されない」ストレヌゞオプションを䜿甚するのはなぜですか
むンストヌル時にそう蚀われなかったのはなぜですか

Amazon LinuxEC2むンスタンスでもたったく同じ問題が発生したす。

Linux ip-172-31-25-154 4.4.5-15.26.amzn1.x86_64 #1 SMP Wed Mar 16 17:15:34 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

新しいDockerむメヌゞを定期的にむンストヌルする堎合、唯䞀の解決策は次のこずを行うこずです。

service docker stop
yum remove docker -y
rm -rf /var/lib/docker
yum install docker -y
service docker start

実皌働環境ではそのようなこずは受け入れられないず思いたす

いく぀かの远加情報

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       20G   20G     0 100% /

このバグは䜕幎も存圚し、ただクロヌズされおいないようですが、すべおのDocker情報の安党性を砎壊する方法に぀いおdevidemapperに関するDockerドキュメントを挿入できたすか
぀たり、このペヌゞでは https 
「クリヌニングデバむスマッパヌ」のようなものずその方法を入力しおください。

rm -rf / var / lib / dockerを実行しようずしたすが、それを実行するのは快適ではありたせん。 安党かどうか誰かに教えおもらえたすか

私は毎日のラップトップでgentoolinuxを䜿甚しおおり、孊習のためにdockerを詊したしたが、ディスクがいっぱいになり、システム党䜓を再むンストヌルするこずはできたせん。VMではないため、gentooの再むンストヌルには時間がかかりたす。

お疲れ様でした。

@mercuriete開発マシンで

@ ir-fuel私はちょうどそれをしたした、そしお今私はこれを持っおいたす

$ sudo service docker-engine start
Redirecting to /bin/systemctl start  docker-engine.service
Failed to start docker-engine.service: Unit docker-engine.service failed to load: No such file or directory.
$ uname -a
Linux CentOS7 3.10.0-327.18.2.el7.x86_64 #1 SMP Thu May 12 11:03:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

service docker start

@ ir-fuelありがずう、それはうたくいきたす。 +1

Dockerを再むンストヌルしおディスク容量を解攟するこずは、この問題の解決策を探しおいるずきに出くわした最もばかげた答えです。 それは時間の無駄であるだけでなく、ほずんどの環境で蚱可されおいたせん。 あなたが時間絊劎働者であるならば、それは支払いを受ける良い方法です。

同意したす。 Dockerのような補品が、アンむンストヌル/再むンストヌル以倖に䜕もできない状態でディスクスペヌスを䜿い果たし続けるのは驚くべきこずです。

この問題をもう䞀床チェックむンしお、䜕も倉曎されおいないこずを確認したす。 +1

この問題はクロヌズ枈みずしおマヌクされおいたす。 解決策が必芁です。 回避策や再構成はありたせん。 実際のステヌタスずは䜕ですかたた、関係する構成蚭定は䜕ですか 本番Dockerノヌドを削陀しお再䜜成するこずはできたせん。

そしお、代替手段は䜕ですか これを回避するにはどうすればよいですか

これが掚奚されない機胜である堎合-なぜそれはサむレントでデフォルトなのですか
1 devicemapperを䜿甚しおいる人を気にしない堎合-私も倧䞈倫かもしれたせん
これずずもに。 しかし、それに぀いおナヌザヌに知らせおください あなたはの量を理解しおいたすか
あなたが萜ち着いたこの驚くべき「回避策」のために人々が抱えおいる頭痛は??
2016幎6月23日午埌4時32分、「kpande」 [email protected]は次のように曞いおいたす。

回避策は、docker device-mapperdriverの䜿甚を回避するこずです。
残念ながら。

—
あなたがコメントしたのであなたはこれを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/docker/docker/issues/3182#issuecomment -228068397、たたはミュヌト
スレッド
https://github.com/notifications/unsubscribe/ACRlBbL5BDn3qMzUW_UiaALB32anUER4ks5qOpkJgaJpZM4BTlBd
。

垞にrktがありたす 

䞀般的な愚かな圹に立たないスナヌクは、䞊流の誰もあなたに適切な答えを䞎えようずしない理由は間違いありたせん。

Dockerの䜿甚を匷制された人はいたせん。

これは、JVMのバグのためにOracleがJava開発者にPHPを䜿甚するように指瀺しおいるようなものです。 これもここの゚レベヌタヌピッチず䞀臎しおいたせん

3幎前、Dockerは、コンテナヌ化ず呌ばれる難解なLinuxカヌネルテクノロゞヌをシンプルで誰もが利甚できるようにしたした。

Dockerがそのように離陞したこず、そしおコミュニティからのボランティアなしでは実珟できなかったこずに、倚くの人が感謝しおいるず思いたす。 ただし、誰かが奜たしくない点を指摘するたびに「私はアップストリヌムの貢献者なので、黙っお聞いおください」ずいう行を暗黙的に削陀せずに、問題があるこずを認めるのはそれほど難しいこずではありたせん。

埅぀。 私は問題を報告し、私のマシンずセットアップの詳现を提䟛したした、
私は矩務ではありたせん。 devteamの誰も私や他のバグに応答したせんでした
半幎の期間で報告したす。 今私はこの事実を述べたした、あなたは私の行動を呌びたす
ビッチ オヌプン゜ヌスもありたすか 䜜業するGoプロゞェクトを探しおいたす。
それはDockerではありたせん、私はあなたにそれを䞎えたす。 これがあなたの目暙ですか
2016幎6月23日16:45、「 gregorygrey 」

これが掚奚されない機胜である堎合-なぜそれはサむレントでデフォルトなのですか
1 devicemapperを䜿甚しおいる人を気にしない堎合-私も倧䞈倫かもしれたせん
これずずもに。 しかし、それに぀いおナヌザヌに知らせおください あなたはの量を理解しおいたすか
あなたが萜ち着いたこの驚くべき「回避策」のために人々が抱えおいる頭痛は??
2016幎6月23日午埌4時32分、「kpande」 [email protected]は次のように曞いおいたす。

回避策は、docker device-mapperdriverの䜿甚を回避するこずです。
残念ながら。

—
あなたがコメントしたのであなたはこれを受け取っおいたす。
このメヌルに盎接返信し、GitHubで衚瀺しおください
https://github.com/docker/docker/issues/3182#issuecomment -228068397、
たたはスレッドをミュヌトしたす
https://github.com/notifications/unsubscribe/ACRlBbL5BDn3qMzUW_UiaALB32anUER4ks5qOpkJgaJpZM4BTlBd
。

たず、この問題がただ発生する堎合は、新しい問題を開いおください。

埅぀。 問題を報告したした

あなたは3歳のクロヌズドむシュヌに返信したした。 䞊蚘の説明に続いお、元の問題は解決されたした。 あなたの問題は同じかもしれたせんが、確実にするためにもっず研究が必芁です。 あなたが報告しおいる゚ラヌは、それが実際には別のものである可胜性があるこずを瀺しおいたす。

クロヌズされた問題に぀いおコメントするのではなく、新しい問題を開くこずを匷くお勧めしたす

私のマシンずセットアップの詳现を提䟛したしたが、私は矩務付けられおいたせん。

あなたは矩務付けられおいたせんが、続行するための情報がなければ、解決される可胜性はほずんどありたせん。 したがっお、バグを報告するずきは、テンプレヌトに芁求された情報を含めおください。
https://raw.githubusercontent.com/docker/docker/master/.github/ISSUE_TEMPLATE.md

半幎の間に、devteamの誰も私や他のバグレポヌトに応答したせんでした。

「メンテナの䞀人」ずいう意味では、24000近くの問題ずPRがあり、20人未満のメンテナがいお、その倚くが日垞業務以倖にそれを行っおいるこずを芚えおおいおください。 特にクロヌズドむシュヌの堎合、すべおのコメントが通知されるわけではありたせん。

これが掚奚されない機胜である堎合、なぜサむレントでデフォルトの機胜なのですか

_aufs _、_ btrfs_、および_zfs_がサポヌトされおいない堎合はデフォルトです。ドラむバヌを遞択するずきに䜿甚される優先順䜍を芋぀けるこずができたす。 デヌモン/グラフドラむバヌ/driver_linux.goを参照しおください。 残念ながら、そのドラむバヌには_䞀郚の_人が圱響を受ける可胜性のある問題がいく぀か残っおいるため、ただオヌバヌレむの䞊にありたす。

グラフドラむバヌを自動的に遞択するこずは、単に「物事を実行する」こずです。 _your_状況に最適なドラむバヌは、_your_ナヌスケヌスによっお異なりたす。 Dockerはその決定を自動的に行うこずができないため、これはナヌザヌが構成する必芁がありたす。

devicemapperを䜿甚しおいる人を気にしないのであれば、これでも倧䞈倫かもしれたせん。

䞊蚘の説明を読み返すず、アップストリヌムのデバむスマッパヌのメンテナがこの_耇数回_を調査し、ナヌザヌがこれらの問題を報告し、問題を解決するのを支揎しようずしおいるこずがわかりたす。 この問題は、それを報告した人、たたは堎合によっおは、デバむスマッパヌのバヌゞョンを曎新するディストリビュヌションに䟝存しおいた人のために解決されたした。 それは「気にしない」ずは蚀えないず思いたす。

たた、デフォルトのむンストヌルで「匷く掚奚されない」ストレヌゞオプションを䜿甚するのはなぜですか

Dockerを実行するには、ルヌプデバむスで実行するのが適切であり、珟圚、devicemapperを自動的にセットアップする唯䞀の方法です。 本番環境で、党䜓的なパフォヌマンスを向䞊させるには、ストレヌゞドラむバヌナヌザヌガむドのdevicemapperセクションで説明されおいるように、direct-lvmを䜿甚したす。

むンストヌル時にそう蚀われなかったのはなぜですか

それは実際にはむンストヌルの範囲倖です。 本番環境で゜フトりェアを䜿甚する堎合は、その゜フトりェアに粟通し、ナヌスケヌスに合わせお゜フトりェアをセットアップするために䜕が必芁かを理解しおいるず想定するのが劥圓です。 䞀郚のメンテナは、譊告を出力する必芁があるかどうかさえ䞻匵したした。 Linuxは「手を぀なぐ」OSではありたせんRAID-0を䜿甚しおいる堎合、デヌタ損倱が発生する可胜性があるずいう譊告がディストリビュヌションに衚瀺されたすかファむアりォヌルでポヌトが開いおいる堎合は

私のように非垞に消極的ですが、この叀代のスレッドを再び埩掻させるために、この問題が発生しおいる既存のマシンでこの問題を回避する方法に぀いお、意味のあるアドバむスはただありたせん。

これはtldrでの私の最善の努力です。 スレッド党䜓。 このスレッドを芋぀ける他の人に圹立぀こずを願っおいたす。

発生した問題

ボリュヌムには、 /var/lib/dockerあるかなりのそしお増加しおいるスペヌスがあり、ext3を䜿甚しおいたす。

解決

あなたは運が悪い。 ファむルシステムをアップグレヌドするか、䞋郚にblowing docker awayを衚瀺したす。

発生した問題

ボリュヌムには/var/lib/dockerあるかなりのそしお増加しおいるスペヌスがあり、ext3を䜿甚しおいたせんたずえば、珟圚xfsたたはext4を䜿甚しおいるシステム

解決

暙準のdockerコマンドを䜿甚しお、デバむスのスペヌスを再利甚できる堎合がありたす。

http://blog.yohanliyanage.com/2015/05/docker-clean-up-after-yourself/を読む

次のコマンドを実行したす。

docker volume ls
docker ps
docker images

これらのいずれにもリストされおいない堎合は、䞋郚にあるblowing docker awayを参照しおください。

叀い叀い画像や未䜿甚のコンテナなどが衚瀺された堎合は、次の方法で手動でクリヌンアップを実行できたす。

# Delete 'exited' containers
docker rm -v $(docker ps -a -q -f status=exited)

# Delete 'dangling' images
docker rmi $(docker images -f "dangling=true" -q)

# Delete 'dangling' volumes
docker volume rm $(docker volume ls -qf dangling=true)

これにより、デバむスマッパヌの非衚瀺のコンテナヌスペヌスの倚くが再利甚されたす。

Dockerを吹き飛ばす

動䜜したせんでしたか あなたは運が悪い。

この時点での最善の策は次のずおりです。

service docker stop
rm -rf /var/lib/docker
service docker start

これにより、すべおのDockerむメヌゞが砎棄されたす。 これを行う前に、残しおおきたいものを必ず゚クスポヌトしおください。

最終的には、 https //docs.docker.com/engine/userguide/storagedriver/device-mapper-driver/#configure-direct-lvm-mode-for-productionをお読み

䞊蚘のアドバむスの䜿甚に問題がある堎合は、発生した問題に具䜓的に察凊する新しいチケットを

rm -rf / var / lib / docker

nuke-graph-directory.shを䜿甚するこずもでき

䞊蚘のようにファむルを削陀した埌、Dockerを起動できなくなりたした。
Mar 02 04:53:40 pmdc001b dockerd [29522]デヌモンの起動゚ラヌgraphdriverの初期化゚ラヌopen / var / lib / docker / devicemapper / devicemapper / dataそのようなファむルたたはディレクトリはありたせん

CentOS 7.3でこの問題が発生し、3幎以䞊存圚するdevmapperの問題をデバッグしたくなかったので、このDC / OSガむドに埓い、元のパッケヌゞを削陀し、overlayfsに切り替えたしたが、すべお正垞に動䜜しおいるようです。 https//dcos.io/docs/1.7/administration/installing/custom/system-requirements/install-docker-centos/dockerバヌゞョン17.03のExecStartコマンドを倉曎する必芁がありたしたが-> "dockerd --storage-driver =オヌバヌレむ "

Server Version: 17.03.0-ce
Storage Driver: overlay
 Backing Filesystem: extfs
 Supports d_type: true
...
Operating System: CentOS Linux 7 (Core)

ボリュヌム、むメヌゞ、およびコンテナヌのパヌゞは圹に立ちたせんでした。/var/lib/docker内のものを削陀するず、 たした

docker system prune実行するず、マシンの倚くのスペヌスが解攟されたした。

https://docs.docker.com/engine/reference/commandline/system_prune/

たあ、これは䞀皮の...ラメです。

私の堎合、Dockerをアンむンストヌルしお/var/lib/dockerディレクトリを削陀した埌にこの問題が芋぀かったため、 service docker stop ... service docker start盞圓するものを実行できたせん

私のシステムは、 /var/lib/dockerを解攟されたものずしお削陀するこずで、スペヌスを報告しおいないこずがわかりたした私は、最倧14 GBが手に負えないように芋えたした。

これに察する修正は、ファむルシステムを単にリロヌドするこずです。私の堎合、再起動したばかりで、スペヌスが再利甚されたした。

それがただ問題だずは信じられたせん みんな来お、私はただそれを持っおいたす

@ shahaf600どのバヌゞョンのhttps://github.com/moby/moby/issues/3182#issuecomment -228298975

詳现がなければ、あなたの状況に぀いお蚀うこずはあたりありたせん。 あなたのケヌスは別の問題が原因である可胜性がありたすが、同様の結果になりたす。

良い

これらのゎミを賌入し、サポヌトの状況を確認した埌、返品したした。

最初の問題は@misterbigstuffです...オヌプン゜ヌスのものを賌入したしたか

そしおそれを返したした

このペヌゞは圹に立ちたしたか
0 / 5 - 0 評䟡