将Postgres数据安装到Windows主机目录中

问题描述 投票:7回答:1

即使我的Windows主机重启后,我仍要确保我的Postgres数据(使用基于Linux的图像)能够持久存在。

我试图按照步骤How to persist data in a dockerized postgres database using volumes

docker-compose.yml

volumes:
  - ./postgres_data:/var/lib/postgresql/data

但是,我遇到错误

waiting for server to start....FATAL:  data directory "/var/lib/postgresql/data/pgdata" has wrong ownership
HINT:  The server must be started by the user that owns the data directory.
 stopped waiting
pg_ctl: could not start server

然后,我尝试按照https://forums.docker.com/t/trying-to-get-postgres-to-work-on-persistent-windows-mount-two-issues/12456/5中的步骤进行操作>

建议的方法是

docker volume create --name postgres_data --driver local

docker-compose.yml

services:
  postgres:
    volumes:
      - postgres_data:/var/lib/postgresql/data

volumes:
  postgres_data:
    external: true

但是,我对命令docker volume create --name postgres_data --driver local感到困惑。作为,它没有提到Windows主机的确切路径。

我尝试过

C:\celery-hello-world>docker volume create postgres_data
postgres_data

C:\celery-hello-world>docker volume inspect postgres_data
[
    {
        "CreatedAt": "2018-02-06T14:54:48Z",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/postgres_data/_data",
        "Name": "postgres_data",
        "Options": {},
        "Scope": "local"
    }
]

我可以知道Windows目录位置在哪个目录下,将VOLUME postgres_data安装到吗?

即使我的Windows主机重启后,我仍要确保我的Postgres数据(使用基于Linux的映像)持久存在。我尝试按照以下步骤操作:如何将数据持久化在dockerized postgres数据库中...

postgresql docker docker-for-windows
1个回答
0
投票

今天我在问自己同样的问题,但我已经弄清楚了。

© www.soinside.com 2019 - 2024. All rights reserved.