docker-compose 安装 postgresql+postgis

690 阅读1分钟

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;