diff --git a/16-master/Dockerfile b/16-master/Dockerfile index e993ae57..c9f06900 100644 --- a/16-master/Dockerfile +++ b/16-master/Dockerfile @@ -120,7 +120,7 @@ RUN set -ex \ && rm -fr /usr/src/cgal # proj -ENV PROJ_GIT_HASH=1e3d0f23393b0b478ae3efc79dcd803437c23fb6 +ENV PROJ_GIT_HASH=8574ee2b3319a7ebb547dc4ce97a40ca8b60239b RUN set -ex \ && cd /usr/src \ && git clone https://github.com/OSGeo/PROJ.git \ @@ -166,7 +166,7 @@ RUN set -ex \ && rm -fr /usr/src/geos # gdal -ENV GDAL_GIT_HASH=c8056f4be79a5fae8c26c5d3a295bd10f83927ad +ENV GDAL_GIT_HASH=6d198cce293685b23615d8d0fd4529e661320530 RUN set -ex \ && cd /usr/src \ && git clone https://github.com/OSGeo/gdal.git \ @@ -301,9 +301,9 @@ ARG CGAL_GIT_BRANCH ENV CGAL_GIT_BRANCH=${CGAL_GIT_BRANCH} ENV CGAL_GIT_HASH=b3e2f204a41c1e508a6f018454b60b00aa3dc6fd ENV SFCGAL_GIT_HASH=8426908ed0fc901bf90bac13603e9ffd7f632c7c -ENV PROJ_GIT_HASH=1e3d0f23393b0b478ae3efc79dcd803437c23fb6 +ENV PROJ_GIT_HASH=8574ee2b3319a7ebb547dc4ce97a40ca8b60239b ENV GEOS_GIT_HASH=69cce6b85195d4010e5b066f62a4c1137da92173 -ENV GDAL_GIT_HASH=c8056f4be79a5fae8c26c5d3a295bd10f83927ad +ENV GDAL_GIT_HASH=6d198cce293685b23615d8d0fd4529e661320530 # Minimal command line test ( fail fast ) RUN set -ex \ @@ -322,7 +322,7 @@ RUN set -ex \ || echo "ogr2ogr missing PostgreSQL driver" && exit 1 # install postgis -ENV POSTGIS_GIT_HASH=fda22140ee28de287fd61bb943cad155dc277ee2 +ENV POSTGIS_GIT_HASH=f6ab40874a85b0c7cbaa419a47029b1ea8428f2e RUN set -ex \ && apt-get update \ diff --git a/17-master/Dockerfile b/17-master/Dockerfile index 92e9668f..eb1cea27 100644 --- a/17-master/Dockerfile +++ b/17-master/Dockerfile @@ -120,7 +120,7 @@ RUN set -ex \ && rm -fr /usr/src/cgal # proj -ENV PROJ_GIT_HASH=1e3d0f23393b0b478ae3efc79dcd803437c23fb6 +ENV PROJ_GIT_HASH=8574ee2b3319a7ebb547dc4ce97a40ca8b60239b RUN set -ex \ && cd /usr/src \ && git clone https://github.com/OSGeo/PROJ.git \ @@ -166,7 +166,7 @@ RUN set -ex \ && rm -fr /usr/src/geos # gdal -ENV GDAL_GIT_HASH=c8056f4be79a5fae8c26c5d3a295bd10f83927ad +ENV GDAL_GIT_HASH=6d198cce293685b23615d8d0fd4529e661320530 RUN set -ex \ && cd /usr/src \ && git clone https://github.com/OSGeo/gdal.git \ @@ -301,9 +301,9 @@ ARG CGAL_GIT_BRANCH ENV CGAL_GIT_BRANCH=${CGAL_GIT_BRANCH} ENV CGAL_GIT_HASH=b3e2f204a41c1e508a6f018454b60b00aa3dc6fd ENV SFCGAL_GIT_HASH=8426908ed0fc901bf90bac13603e9ffd7f632c7c -ENV PROJ_GIT_HASH=1e3d0f23393b0b478ae3efc79dcd803437c23fb6 +ENV PROJ_GIT_HASH=8574ee2b3319a7ebb547dc4ce97a40ca8b60239b ENV GEOS_GIT_HASH=69cce6b85195d4010e5b066f62a4c1137da92173 -ENV GDAL_GIT_HASH=c8056f4be79a5fae8c26c5d3a295bd10f83927ad +ENV GDAL_GIT_HASH=6d198cce293685b23615d8d0fd4529e661320530 # Minimal command line test ( fail fast ) RUN set -ex \ @@ -322,7 +322,7 @@ RUN set -ex \ || echo "ogr2ogr missing PostgreSQL driver" && exit 1 # install postgis -ENV POSTGIS_GIT_HASH=fda22140ee28de287fd61bb943cad155dc277ee2 +ENV POSTGIS_GIT_HASH=f6ab40874a85b0c7cbaa419a47029b1ea8428f2e RUN set -ex \ && apt-get update \ diff --git a/README.md b/README.md index 7769b988..0c0d8559 100644 --- a/README.md +++ b/README.md @@ -6,23 +6,27 @@ The `postgis/postgis` image provides tags for running Postgres with [PostGIS](ht This image ensures that the default database created by the parent `postgres` image will have the following extensions installed: -| installed extensions | [initialized](https://github.com/postgis/docker-postgis/blob/master/initdb-postgis.sh)| -|---------------------|-----| -| `postgis` | yes | -| `postgis_topology` | yes | -| `postgis_tiger_geocoder` | yes | -| `postgis_raster` | | -| `postgis_sfcgal` | | -| `address_standardizer`| | -| `address_standardizer_data_us`| | +| installed extensions | [initialized](https://github.com/postgis/docker-postgis/blob/master/initdb-postgis.sh) | +|--------------------------------|----------------------------------------------------------------------------------------| +| `postgis` | :white_check_mark: | +| `postgis_topology` | :white_check_mark: | +| `postgis_tiger_geocoder` | :white_check_mark: | +| `postgis_raster` | | +| `postgis_sfcgal` | | +| `address_standardizer` | | +| `address_standardizer_data_us` | | Unless `-e POSTGRES_DB` is passed to the container at startup time, this database will be named after the admin user (either `postgres` or the user specified with `-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`. -# Versions (2025-09-26) +## Versions (2025-09-29) Supported architecture: `amd64` (also known as X86-64)" -Recommended versions for new users are: `postgis/postgis:17-3.5`, `postgis/postgis:16-3.5` +Recommended versions for new users are: + +* `postgis/postgis:18-3.6` +* `postgis/postgis:17-3.5` +* `postgis/postgis:16-3.5` ### Debian based (recommended) @@ -41,14 +45,14 @@ Recommended versions for new users are: `postgis/postgis:17-3.5`, `postgis/postg * sfcgal2=2.0 * This version is easy to extend and has matured over time. -| DockerHub image | Dockerfile | OS | Postgres | PostGIS | -| --------------- | ---------- | -- | -------- | ------- | -| [postgis/postgis:13-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=13-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/13-3.5/Dockerfile) | debian:bullseye | 13 | 3.5.2 | -| [postgis/postgis:14-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=14-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/14-3.5/Dockerfile) | debian:bullseye | 14 | 3.5.2 | -| [postgis/postgis:15-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=15-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/15-3.5/Dockerfile) | debian:bullseye | 15 | 3.5.2 | -| [postgis/postgis:16-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=16-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/16-3.5/Dockerfile) | debian:bullseye | 16 | 3.5.2 | -| [postgis/postgis:17-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-3.5/Dockerfile) | debian:bullseye | 17 | 3.5.2 | -| [postgis/postgis:18-3.6](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=18-3.6) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/18-3.6/Dockerfile) | debian:trixie | 18 | 3.6.0 | +| DockerHub image | Dockerfile | OS | Postgres | PostGIS | +|-----------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------|-----------------|----------|---------| +| [postgis/postgis:13-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=13-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/13-3.5/Dockerfile) | debian:bullseye | 13 | 3.5.2 | +| [postgis/postgis:14-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=14-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/14-3.5/Dockerfile) | debian:bullseye | 14 | 3.5.2 | +| [postgis/postgis:15-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=15-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/15-3.5/Dockerfile) | debian:bullseye | 15 | 3.5.2 | +| [postgis/postgis:16-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=16-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/16-3.5/Dockerfile) | debian:bullseye | 16 | 3.5.2 | +| [postgis/postgis:17-3.5](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-3.5) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-3.5/Dockerfile) | debian:bullseye | 17 | 3.5.2 | +| [postgis/postgis:18-3.6](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=18-3.6) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/18-3.6/Dockerfile) | debian:trixie | 18 | 3.6.0 | ### Alpine based @@ -60,53 +64,58 @@ Recommended versions for new users are: `postgis/postgis:17-3.5`, `postgis/postg * sfcgal=2.0.0 * PostGIS is compiled from source, making it a bit more challenging to extend. -| DockerHub image | Dockerfile | OS | Postgres | PostGIS | -| --------------- | ---------- | -- | -------- | ------- | -| [postgis/postgis:13-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=13-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/13-3.5/alpine/Dockerfile) | alpine:3.22 | 13 | 3.5.3 | -| [postgis/postgis:14-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=14-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/14-3.5/alpine/Dockerfile) | alpine:3.22 | 14 | 3.5.3 | -| [postgis/postgis:15-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=15-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/15-3.5/alpine/Dockerfile) | alpine:3.22 | 15 | 3.5.3 | -| [postgis/postgis:16-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=16-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/16-3.5/alpine/Dockerfile) | alpine:3.22 | 16 | 3.5.3 | -| [postgis/postgis:17-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-3.5/alpine/Dockerfile) | alpine:3.22 | 17 | 3.5.3 | -| [postgis/postgis:17-3.6-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-3.6-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-3.6/alpine/Dockerfile) | alpine:3.22 | 17 | 3.6.0 | -| [postgis/postgis:18-3.6-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=18-3.6-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/18-3.6/alpine/Dockerfile) | alpine:3.22 | 18 | 3.6.0 | +| DockerHub image | Dockerfile | OS | Postgres | PostGIS | +|-------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------|-------------|----------|---------| +| [postgis/postgis:13-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=13-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/13-3.5/alpine/Dockerfile) | alpine:3.22 | 13 | 3.5.3 | +| [postgis/postgis:14-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=14-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/14-3.5/alpine/Dockerfile) | alpine:3.22 | 14 | 3.5.3 | +| [postgis/postgis:15-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=15-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/15-3.5/alpine/Dockerfile) | alpine:3.22 | 15 | 3.5.3 | +| [postgis/postgis:16-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=16-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/16-3.5/alpine/Dockerfile) | alpine:3.22 | 16 | 3.5.3 | +| [postgis/postgis:17-3.5-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-3.5-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-3.5/alpine/Dockerfile) | alpine:3.22 | 17 | 3.5.3 | +| [postgis/postgis:17-3.6-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-3.6-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-3.6/alpine/Dockerfile) | alpine:3.22 | 17 | 3.6.0 | +| [postgis/postgis:18-3.6-alpine](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=18-3.6-alpine) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/18-3.6/alpine/Dockerfile) | alpine:3.22 | 18 | 3.6.0 | ### Test images * We provide alpha, beta, release candidate (rc), and development (identified as ~master) versions. * The template for the `*-master` images is updated manually, which might lead to a delay of a few weeks sometimes. -| DockerHub image | Dockerfile | OS | Postgres | PostGIS | -| --------------- | ---------- | -- | -------- | ------- | -| [postgis/postgis:16-master](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=16-master) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/16-master/Dockerfile) | debian:bullseye | 16 | development: postgis, geos, proj, gdal | -| [postgis/postgis:17-master](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-master) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-master/Dockerfile) | debian:bullseye | 17 | development: postgis, geos, proj, gdal | +| DockerHub image | Dockerfile | OS | Postgres | PostGIS | +|-----------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------|-----------------|----------|----------------------------------------| +| [postgis/postgis:16-master](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=16-master) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/16-master/Dockerfile) | debian:bullseye | 16 | development: postgis, geos, proj, gdal | +| [postgis/postgis:17-master](https://registry.hub.docker.com/r/postgis/postgis/tags?page=1&name=17-master) | [Dockerfile](https://github.com/postgis/docker-postgis/blob/master/17-master/Dockerfile) | debian:bullseye | 17 | development: postgis, geos, proj, gdal | ## 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 postgis/postgis +```sh +docker run --name some-postgis -e POSTGRES_PASSWORD=mysecretpassword -d postgis/postgis +``` -For more detailed instructions about how to start and control your Postgres container, see the documentation for the `postgres` image [here](https://registry.hub.docker.com/_/postgres/). +For more detailed instructions about how to start and control your Postgres container, see the documentation for the [postgres image](https://registry.hub.docker.com/_/postgres/). Once you have started a database container, you can then connect to the database either directly on the running container: - docker exec -ti some-postgis psql -U postgres +```sh +docker exec -ti some-postgis psql -U postgres +``` ... or starting a new container to run as a client. In this case you can use a user-defined network to link both containers: - docker network create some-network +```sh +docker network create some-network - # Server container - docker run --name some-postgis --network some-network -e POSTGRES_PASSWORD=mysecretpassword -d postgis/postgis +# Server container +docker run --name some-postgis --network some-network -e POSTGRES_PASSWORD=mysecretpassword -d postgis/postgis - # Client container - docker run -it --rm --network some-network postgis/postgis psql -h some-postgis -U postgres +# Client container +docker run -it --rm --network some-network postgis/postgis psql -h some-postgis -U postgres Check the documentation on the [`postgres` image](https://registry.hub.docker.com/_/postgres/) and [Docker networking](https://docs.docker.com/network/) for more details and alternatives on connecting different containers. See [the PostGIS documentation](http://postgis.net/docs/postgis_installation.html#create_new_db_extensions) for more details on your options for creating and using a spatially-enabled database. -## Supported Environment Variables: +## Supported Environment Variables Since the docker-postgis repository is an extension of the official Docker PostgreSQL repository, all environment variables supported there are also supported here: @@ -118,85 +127,99 @@ Since the docker-postgis repository is an extension of the official Docker Postg * `POSTGRES_HOST_AUTH_METHOD` * `PGDATA` -Read more: https://github.com/docker-library/docs/blob/master/postgres/README.md +> [!NOTE] +> +> `PGDATA` is set to: +> +> * `/var/lib/postgresql/${PG_MAJOR}/docker` version is greater or equal to 18. +> * `/var/lib/postgresql/data` if PostgreSQL version is lower than 18. +> +> See [this PR](https://github.com/docker-library/postgres/pull/1259) for more details + +Read more in the [docker-postgres README page](https://github.com/docker-library/docs/blob/master/postgres/README.md) Warning: **the Docker specific variables will only have an effect if you start the container with a data directory that is empty;** any pre-existing database will be left untouched on container startup. It's important to note that the environment variables for the Docker image are different from those of the [libpq — C Library](https://www.postgresql.org/docs/current/libpq-envars.html) (`PGDATABASE`,`PGUSER`,`PGPASSWORD` ) -## Troubleshooting tips: +## Troubleshooting tips Troubleshooting can often be challenging. It's important to know that the docker-postgis repository is an extension of the official Docker PostgreSQL repository. Therefore, if you encounter any issues, it's worth testing whether the problem can be reproduced with the [official PostgreSQL Docker images](https://hub.docker.com/_/postgres). If so, it's recommended to search for solutions based on this. The following websites are suggested: -* Upstream docker postgres repo: https://github.com/docker-library/postgres - * search for the open or closed issues ! -* Docker Community Forums: https://forums.docker.com -* Docker Community Slack: https://dockr.ly/slack -* Stack Overflow: https://stackoverflow.com/questions/tagged/docker+postgresql +* Upstream [docker postgres repository](https://github.com/docker-library/postgres) + * search for the open or closed issues! +* [Docker Community Forums](https://forums.docker.com) +* [Docker Community Slack](https://dockr.ly/slack) +* [Stack Overflow](https://stackoverflow.com/questions/tagged/docker+postgresql) If your problem is Postgis related: -* Stack Overflow : docker + postgis https://stackoverflow.com/questions/tagged/docker+postgis -* Postgis issue tracker: https://trac.osgeo.org/postgis/report +* Stack Overflow: [docker + postgis](https://stackoverflow.com/questions/tagged/docker+postgis) +* [Postgis issue tracker](https://trac.osgeo.org/postgis/report) And if you don't have a postgres docker experience - read this blog post: -* https://www.docker.com/blog/how-to-use-the-postgres-docker-official-image/ - +* [docker documentation](https://www.docker.com/blog/how-to-use-the-postgres-docker-official-image/) ## Security It's crucial to be aware that in a cloud environment, with default settings, these images are vulnerable, and there's a high risk of cryptominer infection if the ports are left open. ( [Read More](https://github.com/docker-library/postgres/issues/770#issuecomment-704460980) ) + * Note that ports which are not bound to the host (i.e., `-p 5432:5432` instead of `-p 127.0.0.1:5432:5432`) will be accessible from the outside. This also applies if you configured UFW to block this specific port, as Docker manages its own iptables rules. ( [Read More](https://docs.docker.com/network/iptables/) ) -#### Recomendations: +### Recommendations + * You can add options for using SSL ( [see postgres example](https://github.com/docker-library/postgres/issues/989#issuecomment-1222648067) ) - - `-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key` + * `-c ssl=on -c ssl_cert_file=/var/lib/postgresql/server.crt -c ssl_key_file=/var/lib/postgresql/server.key` * Or you can use [SSH Tunnels](https://www.postgresql.org/docs/15/ssh-tunnels.html) with `-p 127.0.0.1:5432:5432` -#### Security scanner information: +### Security scanner information -- Please also scan the base `postgres` docker Image: +* Please also scan the base `postgres` docker Image: It's important to also scan the base `postgres` Docker image for potential security issues. If your security scanner reports vulnerabilities (known as CVEs) in the image, you may wonder why. To get a better understanding, please read the Docker Library FAQ, especially the section titled ["Why does my security scanner show that an image has CVEs?"](https://github.com/docker-library/faq#why-does-my-security-scanner-show-that-an-image-has-cves) For more specific issues related to the postgres docker image, you can search using these links: - - [search for repo:docker-library/postgres trivy](https://github.com/search?q=repo%3Adocker-library%2Fpostgres+trivy&type=issues) - - [search for repo:docker-library/postgres CVE](https://github.com/search?q=repo%3Adocker-library%2Fpostgres+CVE&type=issues) + * [search for repo:docker-library/postgres trivy](https://github.com/search?q=repo%3Adocker-library%2Fpostgres+trivy&type=issues) + * [search for repo:docker-library/postgres CVE](https://github.com/search?q=repo%3Adocker-library%2Fpostgres+CVE&type=issues) -- Optimizing Security Scans: +* Optimizing Security Scans: It's advisable to focus on scanning and fixing issues that can be resolved. Use this command to scan for fixable issues only: * `trivy image --ignore-unfixed postgis/postgis:16-3.5-alpine` * `trivy image --ignore-unfixed postgres:16-alpine` -For more details, you can read this article: https://pythonspeed.com/articles/docker-security-scanner/ +For more details, you can read [this article](https://pythonspeed.com/articles/docker-security-scanner/) + +## Limitations on Updates -#### Limitations on Updates: Unfortunately, we don't have control over updates to Debian and Alpine distributions or the upstream `postgres` image. Because of this, there might be some issues that we cannot fix right away. On the positive side, the `postgis/postgis` images are regenerated every Monday. This process is to ensure they include the latest changes and improvements. As a result, these images are consistently kept up-to-date. -#### Suggestions Welcome: +## Suggestions Welcome + We are always open to suggestions to enhance security. If you have any ideas, please let us know. ## 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` + ```sh + 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 -``` + ```console + 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 + ``` ## Contributor guideline @@ -208,4 +231,4 @@ This Docker-PostGIS project [is part of the PostGIS group](https://postgis.net/d ## Code of Conduct -see: https://postgis.net/community/conduct/ +Link to [the code of conduct](https://postgis.net/community/conduct/)