2019獨角獸企業重金招聘Python工程師標準>>>
獲取鏡像:
docker pull mdillon/postgis
該 mdillon/postgis
鏡像提供了容器中運行Postgres(內置安裝PostGIS 2.5) 。該鏡像基于官方 postgres
image,提供了多種變體,包括 Postgres 9 支持的 (9.4-9.6), Postgres 10和Postgres 11。
該鏡像保證由父 postgres
image安裝了如下的擴展:
postgis
postgis_topology
fuzzystrmatch
postgis_tiger_geocoder
除非 -e POSTGRES_DB
參數在啟動時傳遞,該database將在admin用戶后被命名 (要么是 postgres
或是通過 -e POSTGRES_USER
指定)。 If you would prefer to use the older template database mechanism for enabling PostGIS, the image also provides a PostGIS-enabled template database called template_postgis
.
Usage
In order to run a basic container capable of serving a PostGIS-enabled database, start a container as follows:
docker run --name some-postgis -e POSTGRES_PASSWORD=mysecretpassword -d mdillon/postgis
For more detailed instructions about how to start and control your Postgres container, see the documentation for the postgres
image here.
Once you have started a database container, you can then connect to the database as follows:
docker run -it --link some-postgis:postgres --rm postgres \sh -c 'exec psql -h "$POSTGRES_PORT_5432_TCP_ADDR" -p "$POSTGRES_PORT_5432_TCP_PORT" -U postgres'
See the PostGIS documentation for more details on your options for creating and using a spatially-enabled database.
Known Issues / Errors
When You encouter errors due to PostGIS update OperationalError: could not access file "$libdir/postgis-X.X
, run:
docker exec some-postgis update-postgis.sh
It will update to Your newest PostGIS. Update is idempotent, so it won't hurt when You run it more than once, You will get notification like:
Updating PostGIS extensions template_postgis to X.X.X
NOTICE: version "X.X.X" of extension "postgis" is already installed
NOTICE: version "X.X.X" of extension "postgis_topology" is already installed
NOTICE: version "X.X.X" of extension "postgis_tiger_geocoder" is already installed
ALTER EXTENSION
Updating PostGIS extensions docker to X.X.X
NOTICE: version "X.X.X" of extension "postgis" is already installed
NOTICE: version "X.X.X" of extension "postgis_topology" is already installed
NOTICE: version "X.X.X" of extension "postgis_tiger_geocoder" is already installed
ALTER EXTENSION
參考:
- https://hub.docker.com/r/mdillon/postgis
- PostgreSQL Kubernetes: How to run HA Postgres on Kubernetes,https://portworx.com/ha-postgresql-kubernetes/
-
Deploying PostgreSQL Clusters using StatefulSets,https://portworx.com/ha-postgresql-kubernetes/
-
Crunchy Container Suite,https://github.com/CrunchyData/crunchy-containers
?