docker 要是占用磁盘大可以先按照下面修改
cp -r /var/lib/docker/* /data/docker/lib
mv /var/lib/docker /var/lib/dockerbak
ln -s /data/docker/lib /var/lib/docker
拉取 postgis
docker pull postgres:16
docker pull postgis/postgis:16-3.4
docker-compose.yml
networks:
xx-network:
external: true
services:
postgis:
image: postgis/postgis:16-3.4 # 使用 postgis/postgis 镜像
container_name: postgis
restart: always # 出现错误时自动重启
environment: # 设置环境变量
# POSTGRES_DB: mydatabase # 数据库名为 mydatabase
POSTGRES_USER: postgres # 用户名
POSTGRES_PASSWORD: postgres # 密码
ALLOW_IP_RANGE: 0.0.0.0/0
ports:
- "5432:5432" # 将本地端口 5432 映射到容器内的 5432 端口
volumes: # 将本地目录映射到容器内的目录
- /home/docker/postgis:/var/lib/postgis/data # 将本地 data 目录映射到容器内的 /var/lib/postgresql/data 目录
- /home/docker/pgsql:/var/lib/postgresql/data -d postgis/postgis
networks:
- xx-network # 使用指定声明的网咯
version: "3"
启动
在docker-compose.yml安装目录 执行 docker-compose up -d
新建数据库
CREATE EXTENSION postgis;