🍎
MacOSでDockerの"No space left on device"エラー:即対応
事情
Dockerでイメージを作成している最中に次のようなエラーが表示される:
ERROR: failed to copy files: copy file range failed: no space left on device
しかし、df -h
などで容量を確認したら十分あるのになぜか「ない」と表示される。
簡潔な説明
問題はDockerが使う仮想ボリューム(ディスク)には容量がなくなったこと。
細かいことはいい。MacOSで解決方法を教えて
先ず、可能なら要らないものを削除する。
$ docker image prune -f
$ docker system prune -f
Docker Desktopの場合
Settings -> Resources -> Advanced -> Virtual Disk Limitで容量を増やす
Rancher Desktopの場合
デフォルトとして、容量は100GBになっている。仮想ディスクは $HOME/Library/Application\ Support/rancher-desktop/lima/0/diffdisk
である。
- Rancher Desktopを完全に終了する
- ターミナルを開いて、下記のコマンドを実行する。増やす容量は必要に応じて設定する。例として、50GBを増やす
$ cd /Applications/Rancher\ Desktop.app/Contents/Resources/resources/darwin/lima/Cellar/qemu/9.2.0_1/bin
$ ./qemu-img $HOME/Library/Application\ Support/rancher-desktop/lima/0/diffdisk +50G
- Rancher Desktopを起動
Discussion