結論を言うと、私の場合は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という状態でした。