Laravel sailでCannot create cache directoryが発生したとき

結論を言うと、私の場合はdockerのディスク容量が足りなくなったのが原因でした。

以下はエラーの全文です。

Cannot create cache directory /home/sail/.cache/composer/repo/https---repo.packagist.org/, or directory is not writable. Proceeding without cache. See also cache-read-only config if your filesystem is read-only.

Macの容量は十分なのにDockerで容量が足りなくなる?

そもそも、どうやって容量が足りないことを知ったのかというと、.cacheファイルが作れないというエラーから、コンテナ内に入って直接作成すればいけるのではないかと推測したことでした。

ヒントになった操作は以下の通りです。

sail shell
cd /home/sail
mkdir .composer // mkdir: cannot create directory '.composer': No space left on device

No space left on deviceというエラーを見て、Macの容量を確認しましたが、50GB近く残っていたので、docker自体が怪しいと気づきました。

色々調べたみたところ、下記のコマンドでdockerが使用できる容量が表示できるようです。

docker system df
TYPE            TOTAL     ACTIVE    SIZE      RECLAIMABLE
Images          103       29        43.82GB   27.91GB (63%)
Containers      53        11        199.6MB   126MB (63%)
Local Volumes   23        23        3.184GB   0B (0%)
Build Cache     298       0         2.048GB   2.048GB

上記の結果は、不要なDockerのデータを整理したので十分に空きががありますが、エラーが出ていた時は残りが0という状態でした。

システム開発のご相談はお気軽に

要件定義から運用まで、お客様のビジネスに最適なシステムをご提案いたします。
まずはお気軽にご相談ください。

初回相談無料 お見積もり無料 土日対応
今月の見積もり受付、残り2社様です

小さな会社なので、お客様一社一社に丁寧に向き合うため、
同時にお受けできる案件数に限りがございます

お問い合わせ・ご相談
先月32件のご相談

お探しの情報は見つかりましたか?

ご不明な点やご相談したいことがございましたら、
お気軽にお問い合わせください。

無料相談 オンライン対応 営業電話なし
お問い合わせはこちら