创建容器:

    1. docker run --name postgres \
    2. -p 5432:5432 \
    3. -v postgres_data:/var/lib/postgresql/data \
    4. -e POSTGRES_PASSWORD=admin \
    5. -d postgres:12

    上面命令启动的容器创建的数据卷在 /var/lib/docker/volumes/postgres_data/_data
    如果是linux系统,那么这个目录就在本机相同的目录,如果是其他系统,则不在本机相同的目录,因为在其他系统里,docker-engine 是跑在虚拟机里的。

    1. docker run --name postgres \
    2. -p 5432:5432 \
    3. -v /Users/apron/docker-volumes/rka:/var/lib/postgresql/data \
    4. -e POSTGRES_PASSWORD=admin \
    5. -d postgres:12

    上面命令启动的容器创建的数据卷在 /Users/apron/docker-volumes/rka

    那么数据卷有啥区别呢,第一个使用的是相对目录,这个相对目录是相对docker-engine的, 也就是相对docker-engine默认的挂载目录/var/lib/docker/volumes ;第二个是绝对目录,绝对目录就是针对本机的目录。

    通过dbeaver连接
    WX20200703-120412@2x.png