【docker】啓動docker鏈接數據庫 出現FATAL: password authentucation failed for user "homestatead"問題

 docker能夠成功啓動,啓動命令以下:sql

docker run -d -p 54320:5432 -v `pwd`/pgdata:/var/lib/postgresql/data -e POSTGRES_USER=homestead -e POSTGRES_DB=ctgs -e POSTGRES_PASSWORD=secret postgres 

 錯誤緣由:docker

-v後面的參數,將docker映射文件拉到本地,而後每次啓動的時候去掛載了本地的文件,可能本地文件中的角色和密碼不正確,致使每次雖然啓動成功了可是並無認證經過,致使下面的問題報錯數據庫

 

 

解決方法:post

第一種:不讓docker啓動的時候去掛載本地文件spa

1.docker ps 在執行了上面的啓動以後,列出當前docker中已經存在的postgres數據庫的containerpostgresql

2.docker kill postgres的names 殺死postgres這個containercode

3.從新執行命令blog

docker run -d -p 54320:5432 -e POSTGRES_USER=homestead -e POSTGRES_DB=ctgs -e POSTGRES_PASSWORD=secret postgres

這條命令讓docker啓動的時候不會去掛載本地的文件class

這樣就解決了問題密碼

 

第二種:

刪除本地的pgdata文件夾,而後再重複執行最開始的啓動命令

1.docker ps 在執行了上面的啓動以後,列出當前docker中已經存在的postgres數據庫的container

2.docker kill postgres的names 殺死postgres這個container

3.刪除本地的pgdata文件夾

4.執行剛開始的命令

docker run -d -p 54320:5432 -v `pwd`/pgdata:/var/lib/postgresql/data -e POSTGRES_USER=homestead -e POSTGRES_DB=ctgs -e POSTGRES_PASSWORD=secret postgres

這樣也能解決問題 而且是完全的解決這個問題

相關文章
相關標籤/搜索