centos7 Docker环境下安装PostgreSQL和PostGIS

1.虚拟机安装centos。建议使用云主机,不仅因为速度快,现在是一个全面上云的时代。但是收费。

   这里用VMware安装centos7。centos下载地址。https://www.centos.org/download/ 虚拟机和linux教程很多。

2.centos安装好之后需要修改网卡配置。首先用root账号操作,然后cd /etc/sysconfig/network-scripts回车,进入这个目录。

输入:ls -a 回车,会显示这个目录里面的所有文件。修改网卡配置文件。“ifcfg-ens33”就是网卡配置文件。

vi编辑它,vi ifcfg-ens33 ,随后回车,按”i”键,进入vi编辑模式。把“ONBOOT”的值修改为”yes”,CentOS最小化安装的网卡默认不跟随系统启用,所以这项的默认值为“no”。修改成”yes”后,直接输入”:wq”保存当前修改,退出vi。reboot重启。yum provides ifconfig进行验证。

3.yum-config-manager: command not found

,这个是因为系统默认没有安装这个命令,这个命令在yum-utils 包里,可以通过命令yum -y install yum-utils 安装就可以了。

4.设置yum源和查看仓库中所有dock版本。centos7 Docker环境下安装PostgreSQL和PostGIS_第1张图片

5.安装docker yum install docker-ce-版本号  例如yum install docker-ce-18.03.1.ce     输入y开始安装

centos7 Docker环境下安装PostgreSQL和PostGIS_第2张图片

6.启动docker并设置开机启动。systemctl start docker 

7.安装完成后,测试,拉取hello-world镜像。docker pull hello-world

centos7 Docker环境下安装PostgreSQL和PostGIS_第3张图片

8.运行该镜像。

centos7 Docker环境下安装PostgreSQL和PostGIS_第4张图片

9.拉取postgresql10镜像。

centos7 Docker环境下安装PostgreSQL和PostGIS_第5张图片

10.创建docker数据卷,当容器删除时,数据不丢失。

11.启动容器。run: 创建并运行一个容器;
--name: 指定创建的容器的名字;
-e POSTGRES_PASSWORD=password: 设置环境变量,指定数据库的登录口令为password;
-p 5432:5432: 端口映射将容器的5432端口映射到外部机器的5432端口;
-d postgres:10: 指定使用postgres:10作为镜像。

12.docker ps -a查看启动的容器。

13.查看centos7 ip. ip addr   centos的ip地址是ens33条目中的inet值。

centos7 Docker环境下安装PostgreSQL和PostGIS_第6张图片

14.使用主机的pgAdmin4测试连接虚拟机centos7 docker环境下安装的postgresql10  连接成功

centos7 Docker环境下安装PostgreSQL和PostGIS_第7张图片

15.关闭docker 关闭Centos后,重启docker中的pg方法。启动docker之后docker ps - a 查看容器列表。docker run - ID。如下图所示。

centos7 Docker环境下安装PostgreSQL和PostGIS_第8张图片

----------------------- ------------分割线-----------------

16.拉取 run posgis镜像(另一个镜像)

  • docker run --name=postgis 告诉 docker新建一个名为postgis的镜像
  • -d 后台运行
  • -e POSTGRES_USER=sde 通过 -e 参数向镜像写入POSTGRES_USER=sde的环境变量作为 PostgreSQL的超级用户,你可以在任何地方改变他。
  • -e POSTGRES_PASS=sde 通过 -e 参数向镜像写入POSTGRES_PASS=sde的环境变量作为 PostgreSQL的超级用户的密码,你可以在任何地方改变他。
  • -e POSTGRES_DBNAME=gis 通过 -e 参数向镜像写入POSTGRES_DBNAME=gis的环境变量作为操作 PostgreSQL 的当前数据库,你可以在任何地方改变他。
  • -e ALLOW_IP_RANGE=0.0.0.0/0 通过 -e 参数向镜像写入ALLOW_IP_RANGE=0.0.0.0/0的环境变量,使任何客户端都可以连接当前数据库的配置,你可以在任何地方改变他。
  • -p 5432:5432 因为 PostgreSQL 向外暴露5432,我们要使用外面实体机的 pgAdmin 连接Docker中的数据库,故向外映射5432端口
  • -v 同步 这里不涉及

centos7 Docker环境下安装PostgreSQL和PostGIS_第9张图片

17.查看运行的镜像,运行的日志。

centos7 Docker环境下安装PostgreSQL和PostGIS_第10张图片

18.host主机pgAdmin连接信息。

centos7 Docker环境下安装PostgreSQL和PostGIS_第11张图片

19.可以看到相关的空间参考的表。

centos7 Docker环境下安装PostgreSQL和PostGIS_第12张图片

你可能感兴趣的:(postgresql,gis)