docker コンテナ内にのみ存在するユーザーを使用してホストのフォルダを chown

docker コンテナ内にのみ存在するユーザーを使用してホストのフォルダを chown

したがって、デフォルトではドッカーコンテナが実行され、コンテナ内にホストファイルシステムがマウントされ、内部プロセスがそのファイルにアクセスできるようになります。 Dockerコンテナ内で実行されるプロセスでは、マウントされたファイルシステムのファイルが所有権として必要ですが、所有者(自分のホストユーザー)が異なります。ホストの所有権をコンテナの所有権に変更しようとするたびに、chownは無効なユーザーエラーを報告します。

$ sudo chown -R odoo:odoo *
chown: invalid user: ‘odoo:odoo’

存在しないユーザーを使用してホストからファイルを削除することは可能ですか?それとも仕事をする別の方法がありますか?

ただし、インストールされているフォルダには、このプロセスに必要な追加のモジュールが含まれています。私はホストコンピュータでこれらのモジュールを開発し、再コピーせずにdockerを使用して直接テストしています。

答え1

名前の代わりにUID番号を使用してください。たとえば、odooUIDが1023でGIDが475の場合、次の番号を直接使用できます。

sudo chown -R 1023:475 *

関連情報