docker安装postgresql数据库包含postgis扩张

发布于:2024-03-28 ⋅ 阅读:(20) ⋅ 点赞:(0)

docker安装postgresql数据库包含postgis扩张

安装postgres
docker pull postgres
启动容器
docker run -it --name postgres --restart always \  
  -e POSTGRES_PASSWORD='your_password' \  
  -e POSTGRES_USER=mydbuser \
  -e ALLOW_IP_RANGE=0.0.0.0/0 \  
  -v /data/postgresql/data:/var/lib/postgresql/data \  
  -p 5432:5432 \  
  -d postgres
  

docker pull postgis/postgis

docker run --name postgis \  
  -e POSTGRES_USER=postgres \  
  -e POSTGRES_PASSWORD=your_password \  
  -e POSTGRES_DB=your_database_name \  
  -v /path/to/your/data:/var/lib/postgresql/data \  
  -p 5432:5432 \  
  -d postgis/postgis

安装PostGIS扩展
在PostGIS容器创建后,您还需要在PostgreSQL数据库中启用PostGIS扩展。这通常涉及到连接到数据库并执行SQL命令来安装扩展。
您可以使用psql工具连接到PostgreSQL数据库,并执行以下SQL命令来安装PostGIS扩展:

CREATE EXTENSION postgis;

安装postgis和postgres一起的镜像容器

   docker run \
     --name some-postgis \
     -e POSTGRES_PASSWORD=mysecretpassword \
     -e POSTGRES_USER=mydbuser \
     -p 5432:5432 \
     -v /path/to/pgdata:/var/lib/postgresql/data \
     -d kartoza/postgis:10.5-2.4
   

data下的pg_hba.conf文件
远程访问配置
# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     trust
host    replication     all             127.0.0.1/32            trust
host    replication     all             ::1/128                 trust

host all all all scram-sha-256

本文含有隐藏内容,请 开通VIP 后查看