https://github.com/azavea/docker-postgis
Docker image for PostGIS
https://github.com/azavea/docker-postgis
docker postgis postgresql
Last synced: 10 months ago
JSON representation
Docker image for PostGIS
- Host: GitHub
- URL: https://github.com/azavea/docker-postgis
- Owner: azavea
- License: apache-2.0
- Created: 2015-08-01T00:04:54.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2022-03-02T23:42:59.000Z (over 4 years ago)
- Last Synced: 2025-04-03T07:12:17.946Z (about 1 year ago)
- Topics: docker, postgis, postgresql
- Language: Shell
- Size: 53.7 KB
- Stars: 5
- Watchers: 20
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# docker-postgis
[](https://github.com/azavea/docker-postgis/actions?query=workflow%3ACI)
This repository contains a collection of templated `Dockerfile` for image variants designed to support PostGIS through PostgreSQL.
It was decided to start sunseting this project in favor of upstream - https://github.com/postgis/docker-postgis
## Usage
### Template Variables
- `POSTGIS_MAJOR` - Major version number of PostGIS
- `POSTGIS_VERSION` - Version number for `postgresql-X.X-postgis-X.X` package
- `PG_MAJOR` - Major version number of the target PostgreSQL database instance
- `VARIANT` - Base container image variant
### Environment Variables
Because this image builds on the PostgreSQL container image, it supports the same environment variables. While none of these variables are required, they may aid you in using the image.
#### `POSTGRES_PASSWORD`
This environment variable is recommended for you to use the PostgreSQL image. This environment variable sets the superuser password for PostgreSQL. The default superuser is defined by the `POSTGRES_USER` environment variable. In the above example, it is being set to "mysecretpassword".
#### `POSTGRES_USER`
This optional environment variable is used in conjunction with `POSTGRES_PASSWORD` to set a user and its password. This variable will create the specified user with superuser power and a database with the same name. If it is not specified, then the default user of `postgres` will be used.
#### `PGDATA`
This optional environment variable can be used to define another location - like a subdirectory - for the database files. The default is `/var/lib/postgresql/data`, but if the data volume you're using is a fs mountpoint (like with GCE persistent disks), Postgres `initdb` recommends a subdirectory (for example `/var/lib/postgresql/data/pgdata` ) be created to contain the data.
#### `POSTGRES_DB`
This optional environment variable can be used to define a different name for the default database that is created when the image is first started. If it is not specified, then the value of `POSTGRES_USER` will be used.
#### `POSTGRES_INITDB_ARGS`
This optional environment variable can be used to send arguments to `postgres initdb`. The value is a space separated string of arguments as `postgres initdb` would expect them. This is useful for adding functionality like data page checksums: `-e POSTGRES_INITDB_ARGS="--data-checksums"`.
### Testing
An example of how to use `cibuild` to build and test an image:
```bash
$ CI=1 POSTGIS_MAJOR=3 POSTGIS_VERSION=3.0.3+dfsg-2.pgdg100+1 \
PG_MAJOR=13.3 VARIANT=slim \
./scripts/cibuild
```