Home » docker » docker 部署postgis插件的postgresql 数据库

docker 部署postgis插件的postgresql 数据库

编 辑:Y ┊ 时 间:2023年12月11日 ┊ 访问: 22 次

操作系统:Linux centos7

1、拉取镜像

解释:

docker pull kartoza/postgis

这个是拉取最新的(即lastest),当然也可以指定版本:
kartoza/postgis:[postgres_version]-[postgis-version]
当前最近几个组合版本有:

11.0-2.5

10.0-2.4

9.6-2.4

拉取 postgresql 10.0 版本以及postgis 2.4 版本

$docker pull kartoza/postgis:10.0-2.4

$docker pull kartoza/postgis:11.0-2.5

$docker pull kartoza/postgis:9.6-2.4

二、查看镜像

[root@localhost docker]# docker images

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

kartoza/postgis     10.0-2.4            8d0a4d143a7a        4 months ago        662MB

mysql               5.7                 cd3ed0dfff7e        15 months ago       437MB

三、运行容器

$docker run -t --name postgressql --restart always -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -d kartoza/postgis:10.0-2.4

[root@localhost docker]# docker run -t --name postgressql --restart always  -e POSTGRES_USER=postgres   -e POSTGRES_PASSWORD=postgres  -e ALLOW_IP_RANGE=0.0.0.0/0 -p 5432:5432 -d kartoza/postgis:10.0-2.4

4d127c02c7b11e37575fc4f7c28707649383e1f615332ab94cec18a7173e6322

配置解释:
run,创建并运行一个容器;
–name,指定创建的容器的名字postgresql ;

-e POSTGRES_USER=postgres 设置环境变量,指定数据库用户名为postgres
-e POSTGRES_PASSWORD=postgres,设置环境变量,指定数据库的登录口令为123456

-p 5432:5432,端口映射将容器的5432端口映射到外部机器的5432端口;
-d kartoza/postgis:10.0-2.4,允许该容器以守护态(Daemonized)形式运行于后台
-e ALLOW_IP_RANGE=0.0.0.0/0,这个表示允许所有ip访问,如果不加,则非本机 ip 访问不了
-t 让docker分配一个伪终端(pseudo-tty)并绑定到该容器的标准输入上(这是为了在 交互模式下用户可以通过所创建的终端来输入命令)

四、查看进程

[root@localhost docker]# docker ps

CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS              PORTS                               NAMES

4d127c02c7b1        kartoza/postgis:10.0-2.4   "/bin/sh -c /docker-…"   9 minutes ago       Up 9 minutes        0.0.0.0:5432->5432/tcp              postgressql

af35448d73cd        mysql:5.7                  "docker-entrypoint.s…"   6 months ago        Up 15 hours         0.0.0.0:3306->3306/tcp, 33060/tcp   mysqltest

五、客户端连接postgres

Navicat连接postgres成功。

连接端口:5432

数据库名:postgres

参考:

https://www.cnblogs.com/dengxiaoning/p/12173605.html

https://github.com/postgis/docker-postgis/blob/master/10-2.5/Dockerfile

docker下查询开启的进程

$docker ps

docker下停止进程

$docker stop id

docker 删除进程

$docker rm id

docker删除镜像

$docker rmi 镜像id




Copyright © 2026 Y 版权所有.网站运行:13年238天21小时25分