2016-01-09 80 views
2

訪問泊塢窗-的Postgres安裝的卷創建我的容器是這樣的:我無法從主機

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用戶。這是正常的嗎?如果是這種情況,那麼我怎麼能將數據庫從一臺機器移到另一臺機器呢?

回答

0

嘗試使用數據容器來保存您的數據庫數據。該模式在docs中描述,旨在促進運行時和數據之間的清晰分離。

$ 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 

下發布我覺得給數據容器的一個很好的解釋: