よくある質問と回答 Linux 版

Docker Desktop は Linux コンテナとイメージをどこに保存しますか?

Docker Desktop は Linux コンテナとイメージを、 Linux ファイルシステム内で、1つの大きな「ディスクイメージ」ファイルに保存します。これは、通常 /var/lib/docker ディレクトリにコンテナとイメージを保存する Linux 上の Docker とは異なります。

ディスクイメージのファイルはどこですか?

ディスクイメージファイルを探すには、 Docker ダッシュボードから Preferences を選び、 Resources タブから Advanced を探します。

Advanced タブにはディスクイメージの場所を表示します。また、ディスクイメージの最大容量と、ディスクイメージが使用している実際の容量を表示します。他のツールでは、実際のファイル容量ではなく、最大ファイル容量としてディスク使用量が表示される場合があるので、ご注意ください。

ファイルが大きすぎる場合は、どうしたらいいでしょうか?

ディスクイメージが大きすぎる場合、次のことができます:

  • より大きなドライブにディスクイメージを移動する

  • 不要なコンテナとイメージを削除する

  • ファイルに割り当て可能な最大容量を減らす

大きなドライブにファイルを移動する方法は?

ディスクイメージファイルを別の場所に移動するには、次のように実行します:

  1. Preferences を選び、 Resources タブから Advanced を選ぶ

  2. Disk image location セクション内で、 Browse をクリックし、ディスクイメージの新しい場所を選ぶ

  3. 変更を反映するには、 Apply & Restart をクリック

Finder を使ってファイルを直接移動しないでください。移動してしまうと、 Docker Desktop がファイルを追跡できなくなります。

不要なコンテナとイメージをどうやって削除しますか?

不要なコンテナとイメージを持っているかどうかを調べます。クライアントとデーモン API がバージョン 1.25 以上で実行している場合( docker version コマンドを使い、クライアントとデーモン API のバージョンを確認できます)、次のように実行して詳細な容量の使用情報を表示できます:

$ docker system df -v

または、イメージ一覧を表示するには、次のように実行します:

$ docker image ls

それから、コンテナ一覧を表示するため、次のように実行します:

$ docker container ls -a

不要なオブジェクトがたくさんある場合、次のコマンドを実行します:

$ docker system prune

このコマンドは、停止中のコンテナ、使われていないネットワーク、宙吊りイメージと構築キャッシュを全て削除します。

ホストが依存しているディスクイメージのファイル形式によっては、容量の確保に数分ほど必要な場合があります。

  • ファイル名が Docker.raw の場合:ホスト上の空きは数秒以内に確保できる

  • ファイル名が Docker.qcow2 の場合:バックグラウンドのプロセスとして容量を確保するため、数分かかる

イメージが削除された時にのみ、容量が解放されます。実行しているコンテナ内でファイルを削除しても、自動的に空き容量として解放されません。容量確保をいつでも行いたい場合は、次のコマンドを実行します。

$ docker run --privileged --pid=host docker/desktop-reclaim-space

ツールでは、実際のファイル容量ではなく、最大ファイル容量としてディスク使用量が表示される場合があるので、ご注意ください。ホスト上での実際の容量を確認するには、ターミナルから次のように実行します。

$ cd ~/.docker/desktop/vms/0/data
$ ls -klsh Docker.raw
2333548 -rw-r--r--@ 1 username  staff    64G Dec 13 17:42 Docker.raw

この例では、ディスクの最大容量は 64 GB ですが、ディスクの実際の容量は 2333548 KB です。

ファイルの最大容量を減らすには、どうしたらいいでしょうか?

ディスクイメージファイルの最大容量を減らすには、次のようにします。

  1. Preferences を選び、 Resources タブから Advanced を選ぶ

  2. Disk image location セクション内で、 ディスクイメージの最大容量を変更できます。スライダーを下限に調整します。

  3. 変更を反映するには、 Apply & Restart をクリック

最大容量を減らす場合は、現在のディスクイメージは削除されます。つまり、全てのコンテナとディレクトリは失われます。

参考

Frequently asked questions for Linux

https://docs.docker.com/desktop/faqs/linuxfaqs/