あなたは正しい道を進んでいます...
マウントされたボリューム/
のルートフォルダを使用したいために発生するエラー postgresqlのデータディレクトリとpostgresqlは、空ではなく、すでにいくつかのデータが含まれているため(つまり、lost+found
)、そうすることはベストプラクティスではないと文句を言います。 ディレクトリ)。
別の空のサブフォルダー(/postgres
)にデータディレクトリを配置することをお勧めします。 たとえば)、ファイル構造を作成するときにpostgresqlにクリーンな状態を与えます。おそらく内部に何も入っていない(空だった)ホストフォルダをマウントし、そのような苦情を引き起こさなかったため、minicubeでは同じことは得られませんでした。
そのためには、最初は空のsubPath
が必要です。 ボリュームの(空の/postgres
たとえば、PVのサブフォルダー)適切なマウントポイント(/var/lib/posgresql/data
)にマウントされます )ポッド内。 subPathとマウントポイントエンドフォルダに同じ名前を付けることができることに注意してください。ここでは、test-db-volume/postgres
の例としてそれらが異なります。 フォルダはポッドの/var/lib/postgresql/data
にマウントされます フォルダー:
...
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: test-db-volume
subPath: postgres
...