在创建Docker容器中导入数据库-需要使用pg_restore

时间:2019-02-20 14:06:50

标签: postgresql docker

有人在创建 docker镜像时解决了 postgre数据库自动导入吗?传统方法是将文件放入docker-entrypoint-initdb.d中。但是,它对我不起作用,因为我需要通过pg_restore进行导入(因为自定义格式转储)。我不知道如何通过 dockerfile 启动 postgres服务。问题是每次它在单独的容器层中运行。谢谢您的帮助。

1 个答案:

答案 0 :(得分:0)

我通过将.sh脚本(包含pg_restore命令)放入docker-entrypoint-inidb.d解决了这个问题。我使用官方的Postgre映像,该映像在dockerfile之后运行在docker-entrypoint-initdb.d中的所有.sql和.sh文件之后 更多信息https://github.com/docker-library/docs/tree/master/postgres#how-to-extend-this-image