[英]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.