DockerでWSL2を使った場合の権限問題

下記の動画を見ながらWindows+WSL2+Dockerでチュートリアルを進めていたが、docker-composeを使う段でエラーが出てしまった。

Docker超入門講座 合併版 | ゼロから実践する4時間のフルコース(Docker ComposeでRailsを構築しよう)

エラーの該当箇所はdbのvolumes。パーミッション関連のエラーが出た。調べてみるとWSL2を使っているとよく遭遇する問題だそうだ。Ubuntuにログインしたときの初期ユーザーが所有者のファイルとdockerなどが実行されたときのrootユーザーが所有者のファイルが混在することによるらしい。なので、初期ユーザーは使わずUbuntuを起動すると自動的にrootになるように設定することによって問題解決ができた。

【Docker】 WSL 2 を利用したコンテナー内開発で権限をどう設定するべきか

コメントする