docker中使用postgresql数据库

1.拉取

默认最新

运行容器

由于最新版删减了东西,所以会报错

参考

感谢以下博主让我从爬出深坑~

# 拉取postgres
https://www.hangge.com/blog/cache/detail_3073.html

# 报错
https://blog.csdn.net/weixin_44127299/article/details/127883966

2.更换版本

指定14版本

运行容器

使用navicat连接通过

导入sql文件

3.进入容器

查看库表

退出为root

再进入

不管是默认的postgres密码还是服务器密码都验证失败,只能退出容器重进了!

4.本地测试.net core连接

更改连接字符串

重新打包生成容器

结果超时拒绝

开始排查:故意输错Usersname、Password、Database查看浏览器

Usersname:

Password:

Database:

可以得出不是以上错误导致

原因

最后发现原因是定义容器的时候将端口指定为5433,而postgres默认为5432,在连接字符串时不写默认也是5432,因此我们需要在连接字符串中指定Port为5433

再次运行,连接成功!

5.探索点

pg_hba.conf为什么不用改?

# 参考:
https://www.jianshu.com/p/3d7086398524
posted @ 2023-01-26 22:41  long-livece  阅读(666)  评论(0编辑  收藏  举报