Dockerは/ varスペースを占めます。スペースを節約できますか?

Dockerは/ varスペースを占めます。スペースを節約できますか?

これについて良い意見があるから質問私はそれがこの特定の質問に対する良い答えであり、有益であると思います。

だから、コミュニティにもっと恩恵を与えるためにここで答えを得たいと思います。

私のgnu / linuxシステムには/var20Gの大きなスペースがありますが、dockerの使用とカスタムdockerイメージの開発のために/varスペースの90%を占めています。それでは、その中にスペースをどのように確保できますか/var

もともとこれでバックアップしたかったのに質問言ってからもう一度分割してください/var。しかし、それは私にとってあまりにも多くの努力のようです。より安全で時間がかかりませんか?

答え1

しばらくこの操作を実行していない場合は、実行してくださいdocker system prune。ガベージコレクタを実行して、多くのディスク容量を確保します。

次に、特定のタスク(ビルド、インポートなど)を実行するときに、より多くのタスクが必要になる可能性がありますが、回復できないアイテムを削除しないでください。

答え2

別の方法は、フォルダを/var/lib/dockerより大きなディスク/パーティションに同期することです。私の場合、含まれているパーティションに/home/空き容量があったので、次の手順に従いました。

  1. /home/という名前の専用フォルダを作成しました。docker

    mkdir /home/docker
    
  2. を使用してrsyncデータを次の場所にコピーします。/home/docker

    rsync -av /var/lib/docker/ /home/docker
    

    これにより、ソースディレクトリの末尾のスラッシュが意図されています/home/docker/var/lib/dockerそれがなければ、あなたdocker/home/docker

  3. rsyncプロセスがどのように機能するかを確認しました。

    ls -l /home/docker
    
  4. 私はドッカーデーモンを殺しました。 (私はUbuntuを使用しています。したがってusingはうまくいきserviceます。systemctlほとんどのディストリビューションではusingもこれを行います。)

    sudo service docker stop
    
  5. 削除する/var/lib/docker

    rm -rf /var/lib/docker
    
  6. シンボリックリンク/home/docker

    sudo ln -s /home/docker /var/lib/docker
    
  7. ドッカーを再起動します。

    sudo service docker start
    

関連情報