我无法从主机访问装载的docker-postgres卷
我创build我的容器是这样的:
docker run --name postgresql -itd --restart always \ --publish 5432:5432 \ --volume /my/local/host:/var/lib/postgresql \ sameersbn/postgresql:9.4-11
但是,当我做根目录上的ls
,我看到这样的东西:
drwxrwxr-x 3 messagebus messagebus 4,0K Ιαν 10 00:44 host/
或者换句话说,我不能访问/my/local/host
目录。 我不知道messagebus
用户。 这是正常的吗? 如果是这样的话,那我怎么能把数据库从一台机器移到另一台机器上呢?
尝试使用数据容器来保存您的数据库数据。 该模式在文档中进行了描述,旨在促进运行时间和数据之间的清晰分离。
$ docker create -v /var/lib/postgresql --name dbdata sameersbn/postgresql:9.4-11 $ docker run --name postgresql1 -itd --restart always \ --publish 5432:5432 \ --volumes-from dbdata sameersbn/postgresql:9.4-11
一个单独的数据容器使备份和恢复更简单,更明显
docker run --volumes-from dbdata -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /var/lib/postgresql
下面的post我认为给出了数据容器的一个很好的解释: