欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python连接基于docker运行的Postgres数据库

程序员文章站 2022-07-14 11:03:47
...

Python连接基于docker运行的Postgres数据库

在docker中生成Postgres数据库服务

https://github.com/docker-library/postgres
参考上述链接,运行docker build构建postgres镜像

构建镜像,运行服务

docker run -it -p 5432:5432 pstgres /bin/bash
  • 参考下述命令,运行服务器
  1. 创建集群
pg_createcluster 11 main --start
  1. 修改配置(root角色)
    修改/etc/postgresql 路径下 pg_hba.conf文件(使用find命令查找该文件具体位置),提前安装vim,
    在下面配置处添加多一行配置,开放外部访问docker内数据库权限。
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
host	all		all		0.0.0.0/0		md5
  1. 启动服务
/etc/init.d/postgresql start
  1. 停止服务
/etc/init.d/postgresql stop

Python

from playhouse.postgres_ext import PostgresqlExtDatabase
db = PostgresqlExtDatabase(
    database='<database>',
    host='127.0.0.1',
    port=5432,
    user='<user>',
    password='<password>',
)

测试连接

关键点

  • postgres服务启动前,需配置pg_hba.conf