国产麒麟ARM64离线安装POSTGIS

最近项目里有个在麒麟ARM64平台部署项目的需要,项目里有用到postgis,但是苦于服务器不能联网,安装十分困难。经过摸索最终完成安装。

一、找一台能联网的服务器

二、在联网的服务器里利用docker拉去镜像

docker pull nickblah/postgis:11-bullseye-postgis-3

,安装的docker-compose.yaml信息如下:

version: '3'
services:
  postgres:
    restart: always
    image: nickblah/postgis:12-bullseye-postgis-3
    container_name: postgis_arm
    volumes:
      - ./data/pgdata/:/var/lib/postgresql/data/pgdata/
      - /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime
      - /usr/local/share/postgresql/extension:/usr/local/share/postgresql/extension
    environment:
      POSTGRES_USER: postgres
      POSTGRES_DB: postgres
      POSTGRES_PASSWORD: ***@123
      ALLOW_IP_RANGE: 0.0.0.0/0
      PGDATA: /var/lib/postgresql/data/pgdata
    ports:
      - "5432:5432"

其中postgis的镜像来源(这个很关键,找兼容的postgis版本找了很久!):

https://hub.docker.com/r/nickblah/postgis/tags

三、此处采用docker-compose方式进行启动,查看启动结果,并用客户端远程连接看数据库是否正常

[root@server postgres-docker]# docker ps
CONTAINER ID   IMAGE                                    COMMAND                  CREATED       STATUS       PORTS                                            NAMES
f7d74628f978   nickblah/postgis:12-bullseye-postgis-3   "docker-entrypoint.s…"   5 hours ago   Up 5 hours   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp        postgis_arm

用navicat远程连接数据库正常访问,新建查询窗口,执行插件引入:

CREATE EXTENSION postgis;

提示执行成功,表示POSTGIS安装成功。

四、导出POSTGIS容器

docker export -o postgis_arm > postgis_arm64.tar

在当前目录会生成一个tar文件,将文件从服务器下载到自己电脑的磁盘上

五、远程离线的麒麟服务器,上传tar文件,并执行导入指令

import postgis_arm64.tar postgis_arm64:postgis_arm64

docker images查看镜像是否存在,下面内容说明完成导入

[root@host-10-84-30-9 PG]# docker images
REPOSITORY           TAG             IMAGE ID       CREATED         SIZE
postgis_arm64        postgis_arm64   655b57bacd54   8 seconds ago   527MB

六、启动容器

docker run -it -d --name postgis_arm64 -p 5432:5432 655b57bacd54 bash

七、查看服务状态,是否正常启动

[root@host-10-84-30-9 PG]# docker ps
CONTAINER ID   IMAGE          COMMAND   CREATED         STATUS         PORTS                                       NAMES
0bdb25b2684f   655b57bacd54   "bash"    4 minutes ago   Up 4 minutes   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp   postgis_arm64

八、用navicat远程最新安装的postgis,看看是否能连接正常,并且绑定插件正常

CREATE EXTENSION postgis;

到此完成安装。

备注:本文阅读有基础要求,对docker和docker-compose的使用有一定了解,否则前几步看不懂,这里不赘述如何安装docker,docker-compose及一些docker的基操。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值