用docker部署postgres 10 + postgis 2.4.1
Posted 永远的幻想
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用docker部署postgres 10 + postgis 2.4.1相关的知识,希望对你有一定的参考价值。
dockerhub官网直接有postgis镜像,但是pg版本低,还是9.x的
所以就选择自己配个pg10+postgis 2.4.1
postgres在dockerhub的官方介绍不是太清楚,没有演示-v
我目前的主要需求是:
db用镜像起容器
数据内容保存在容器外
启动db容器时,用-v把数据内容挂进去
主要目的就是懒得安装db配参数,然后,db更新升级的时候别影响数据。
yml这样写
# Use postgres/example user/password credentials
version: ‘3.1‘
services:
db:
image: postgres
restart: always
environment:
POSTGRES_PASSWORD: example
volumes:
- /home/db/postgres:/var/lib/postgresql/data
adminer:
image: adminer
restart: always
ports:
- 8080:8080
/home/db/postgres是自己随便写的。可以事先不存在。
放在/home,是因为装系统的时候/home为独立分区,重装系统的时候只要挂载点选上home,就完全保留数据。
然后用adminer 登录数据库。用户名用 postgres 密码是 example
老实说,和pg的文档八字不合。先是没看懂dockerhub里各种乱七八糟的参数设置介绍(例子里用全局变量配了密码,可是不配用户名,莫名其妙啊);
然后没看懂“Use postgres/example user/password” 这句话。直接写 user:postgres password:example,或者加个as “ use postgres/example as user/password”行吗?
是我智力低, 脑抽了,还是他文档过于奇葩?
反正主要是为了postgis也就忍了。
PostGIS
安装依赖项一堆,除去常见的gcc make g++,这些不算,gdal geos proj4 3件套是必装的,官网的各种版本依赖关系矩阵茫茫多啊。。。然后还有json-c什么的。
实在懒得自己配了。直接参考github上docker-postgis
只砍了一句,不知道postgis 2.4.1的 SHA256码是多少,砍了
以上是关于用docker部署postgres 10 + postgis 2.4.1的主要内容,如果未能解决你的问题,请参考以下文章
使用 docker-compose 启动 Postgres 会立即关闭
利用docker和docker-compose部署Nextcloud服务(nginx-fdm-postgres)
在 Docker 中使用 Postgres 在 HA 中部署 Keycloak 时出现问题
docker-compose spring boot无法连接到Postgres [重复]
postgres和mysql基于docker搭建以及phppgadmin和phpmyadmin的应用(个人备份用非教程)