繁体   English   中英

泊坞窗无法还原Postgres备份

[英]docker faild to restore postgres backup

我正在尝试使用docker创建和还原postgres备份。 码头工人未能做到这一点,并给我以下错误:

/usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*

dockerfile:

FROM postgres:11

ENV POSTGRES_USER postgres
ENV POSTGRES_PASSWORD postgres
ENV POSTGRES_DB dbName

COPY backup.backup /
COPY initdb.sh /docker-entrypoint-initdb.d

initdb.sh:

pg_restore --username=postgres --create --exit-on-error --verbose --dbname=dbName backup.backup

泊坞窗,compose.yml:

version: '2'

services:
  db:
image: postgres:11
expose:
  - "5432"
ports:
  - "15432:5432"
volumes:
  - dock-volume:/var/lib/postgresql/data
environment:
  - POSTGRES_PASSWORD= postgres
  - POSTGRES_DB= dbName


volumes:
  dock-volume:

我试图将环境变量添加到docker-compose.yml中,但没有帮助。

您不应该为Postgres创建Dockerfile ,因为您已经在Dockercompose文件中有了定义。 您在environment下定义的变量在Postgres内部可见。 如果要备份并确保在初始化时正在运行,可以执行以下操作:

volumes:
  - ~/Downloads/data/my_buckup.psql:/docker-entrypoint-initdb.d/stage.sql

然后,当Postgres初始化时,将运行此脚本。 您可以在How to extend this image部分下的此处查看文档。

我希望这是有道理的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM