您好,登錄后才能下訂單哦!
這篇文章主要講解了“docker怎么部署訪問postgres數據庫”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“docker怎么部署訪問postgres數據庫”吧!
宿主機創建postgres用戶:
adduser postgres
拉取鏡像,此處以12.1版本為例:
docker pull postgres:12.1
創建所用的卷
docker volume create pgdata_test_env
啟動(密碼為123456):
docker run --user=0 -p 45565:5432 -d --name pg_test --restart always \ -v pgdata_test_env:/var/lib/postgresql/data \ -e POSTGRES_PASSWORD=123456 \ postgres:12.1
訪問pg,進入容器(注意需要用postgres 用戶):
docker exec -ti -u postgres pg_test bash psql
show log_destination; 查看日志記錄類型,未開啟時顯示off
show log_directory; 查看日志路徑
啟用日志:alter system set logging_collector='on'; 重啟pg容器。
首先查看docker root地址:
執行docker info,找Docker Root
Docker Root Dir: /opt/docker
進入卷內部:
cd /opt/docker/volumes/pgdata_test_env/_data postgresql.conf就是配置文件,修改完后重啟pg即可
重啟方式有兩種:
方法1:docker restart pg_test 方法2:進入容器, docker exec -ti -u postgres pg_test bash cd /var/lib/postgresql/data pg_ctl restart 即可重啟成功
訪問時兩種形式皆可:
1,使用容器Ip和映射的容器內端口
2,使用宿主機ip和映射的宿主機端口
如果使用第二種時如果出現以下兩種類似的連不上pg的報錯:
read: connection reset by peer 或
i/o timeout
但進入容器使用pg正常,這就需要排查網絡層面的問題,如端口是否開放,如果你有這方面的未決問題可以提出來,我幫你解決哦
感謝各位的閱讀,以上就是“docker怎么部署訪問postgres數據庫”的內容了,經過本文的學習后,相信大家對docker怎么部署訪問postgres數據庫這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。