マウントされたボリュームで共有するすべてのファイルは、コンテナーでCMDを実行するユーザーの同じuid:guid所有権を持っている必要があります。私は毎日の作業でいくつかの回避策を使用することができました。うまくいけば、そのうちの1つがあなたのために働くことができます:
- コピー 別の場所にあるリソースファイルとエントリポイントのcpを正しいパスに移動します。これは、エントリポイントスクリプトを実行するユーザーが、CMDを実行するユーザーと同じであるため、ファイルのuid:guidが同じになるためです。このパターンは、 public jenkins dockerimage で確認できます。
- 模倣 Dockerホスト内の必要なファイルのユーザーとグループの所有権スキーマ。このようにして、コンテナーとホストの両方が、使用するファイルに対して同じUID / GUIDを持ちます。これにより、Webサーバーは読み取りを試みたときに自分自身を強制終了しません。それらのファイル。
- 所有権の変更 postgresql public dockerimage のようなエントリポイントスクリプトを使用してオンザフライで します。
お役に立てば幸いです。