docker 意外删除postgres .conf文件

zqdjd7g9  于 2023-02-11  发布在  Docker
关注(0)|答案(1)|浏览(124)

我试图删除pg_log文件夹(这是巨大的3Gib),但我不小心删除了数据文件夹中的一切(通过rm ./*):

现在所有的.conf文件从数据文件夹中删除,我在日志中收到这个错误:
“数据页校验和被禁用”
postgres是由docker通过docker hub(15-alpine)制作的
我没有碰那里的任何配置文件。
我在哪里可以找到默认的postgres配置文件?我想我可以通过恢复.conf文件使它恢复工作。

vptzau2j

vptzau2j1#

使用Docker映像恢复默认配置文件的步骤。
1.用于Postrgres的拉入Docker图像:

docker pull postgres:15-alpine

1.运行容器:

docker run -e POSTGRES_HOST_AUTH_METHOD=trust postgres:15-alpine

1.保持当前终端打开并打开新终端
1.连接到Docker容器中的 shell :

docker ps

CONTAINER ID   IMAGE                    COMMAND                  CREATED         STATUS         PORTS      NAMES
aee1237294b8   postgres:15-alpine3.17   "docker-entrypoint.s…"   7 seconds ago   Up 6 seconds   5432/tcp   naughty_knuth

docker ps结果复制容器ID并执行shell命令:

docker exec -it aee1237294b8 bash

1.转到数据文件夹并存档:

cd /var/lib/postgresql/data/
tar -zcf pgdata.tar.gz *

1.出口Docker容器 shell :

exit

1.从Docker容器复制存档:

docker cp aee1237294b8:/var/lib/postgresql/data/pgdata.tar.gz ~/Downloads/pgdata.tar.gz

因此我已经从postgres:15-alpine下载了配置
从这里开始:https://anarjafarov.me/pg.conf.zip
观看视频说明:https://www.youtube.com/watch?v=fgHtvwbQJDE

相关问题