如何在docker中恢复postgres?

use*_*838 3 postgresql restore docker

我创建这样的备份: docker exec DOCKER pg_dump -U USER -F t DB | gzip > ./FILE.tar.gz

鉴于数据库在容器内运行,恢复数据库的最佳方法是什么?

hur*_*urk 6

对于你的情况:

docker exec -it <CONTAINER> gunzip < backup.tar.gz | pg_restore -U <USER> -F t -d <DB>
Run Code Online (Sandbox Code Playgroud)

如果容器是面向公共的并且允许pg_hba.confpostresql进行远程连接,则还可以进行远程还原:

gunzip < backup.tar.gz | pg_restore -U <USER> -F t -d <DB> -h <HOST_IP> -p 5432
Run Code Online (Sandbox Code Playgroud)

根据经验,最好记录特定于项目的备份和恢复命令.