一次docker異常時修復過程


場景

postgresql數據庫在docker環境安裝插件,修改配置(增加pglogical擴展加載)后無法啟動容器了

啟動時報錯

Error response from daemon: Container 130e4f7fc99d06d98a6d1542b16580ff25475b9cff892a75cde26743xxx676d3 is restarting, wait until the container is running

排查步驟

查看容器的錯誤日志
docker logs postgres

2020-05-06 06:17:12.624 UTC [1] FATAL:  could not access file "pglogical": No such file or directory
2020-05-06 06:17:12.624 UTC [1] LOG:  database system is shut down

如上報錯pglogical插件不存在(修改配置時增加了shared_preload_libraries = 'pglogical'導致)

解決

  1. 將配置文件復制出來
    docker cp 730e4f7fc99d:/var/lib/postgresql/data/postgresql.conf postgresql.conf
    修改去掉pglogical插件的預加載

  2. 將配置文件到容器中
    docker cp postgresql.conf 730e4f7fc99d:/var/lib/postgresql/data/postgresql.conf

docker restart [容器ID] 就能重新啟動了


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM