kopia lustrzana https://github.com/kartoza/docker-postgis
Added extensions building script (#164)
* Fix typo in helper script
* Port work in develop to 10 branch (#90)
* Port 9.6 to develop (#89)
* Part one of porting work from 9.6 to 10
* Backported more scripts from 9.6 branch
* Added missing apt update in dockerfile
* Updates to entrypoint to reference image and update docker-compose to reference 10 pg
* Added sample and docs from 9.6 branch
* Removed my diagram as Rizky had already added one
* Fix env paths for pg 10
* Fixes for backporting work from 9.6 to 10 - dbb now spins up and accepts connections properly
* Update README.md
* Backport from branch: 9.6-2.4
Fix default datadir
- Change into default datadir
- Add small unittest
* Optimise PostgreSQL performance and align with the changes done in 9.6
version
* Fix version numbers
* Minor change to correct env file
* Merged 10 branch into develop
* Remove reduntant conf file from dockerfile
* Remove reduntant conf file directive from setup script
* Remove reduntant conf file directive from script
* Migrate settings to be compatible with PostgreSQL version 11
* fix ssl setup
* Align changes to postgresql version 11
* Set destroy database to false
* Commented out code for destroy database
* Fix version number for build
* Merge develop to master to align with PostgreSQL 11 (#117)
* Added note about version number
* README update
* Revert to using pg 9.3 in latest build - prevent breaking downstream apps for now
* Revert to pg 9.3
* Fix references to 9.4 to make them 9.3 rather
* Fix incorrect version in 9.4 branch
* Fix TOPOLOGY conditional typo
* Update run-postgis-docker.sh
* Update run-postgis-docker.sh
added IPADDRESS
* Updates from Marco
* Allow connections from 192.168 private network too
* start temporary server in local-only mode, poll instead of blind wait, preserve pid 1
* Enable PostGIS Out DB raster support
http://postgis.net/2015/05/02/tip_enable_raster_drivers/
http://postgis.net/docs/postgis_installation.html#install_short_version
* Remove hardcoded reference to container name "docker"
* upgrade postgres to 9.5 and postgis to 2.2
* Added flexible IP range as arg on docker run
* Added better description to docker env vars
* Updated references to pg and postgis versions in readme
* Followup 0745c488
, fix references to 9.4
* problem version
postgresql version is 9.4, instead of 9.5
* Added note about allowing external ports.
* Update README.md
* Cleanups to 9.5 branch - remove old supervisor files
* Fix for README
* 9.5 2.2 (#49)
* Allow connections from 192.168 private network too
* Updated references to pg and postgis versions in readme
* Cleanups to 9.5 branch - remove old supervisor files
* Fix for README
* Dont add supervisor stuff which is deprecated
* Fix 9.4 reference
* Allow changing the default database name (#50)
* Allow changing the default database name (#50)
* Allow changing the default database name (#50) (#52)
* Commented out legacy scripts since it seems they are removed in 2.2
* 9.5 2.2 (#58)
* Allow changing the default database name (#50)
* Commented out legacy scripts since it seems they are removed in 2.2
* 9.5 2.2 (#59)
* Allow changing the default database name (#50)
* Commented out legacy scripts since it seems they are removed in 2.2
* Improve start (#57)
* Make initial dir optional
* Improve termination of background initial process #56
* Merge improvements from 9.5 branch (#60)
* Allow changing the default database name (#50)
* Commented out legacy scripts since it seems they are removed in 2.2
* 9.5 2.2 (#59)
* Allow changing the default database name (#50)
* Commented out legacy scripts since it seems they are removed in 2.2
* Improve start (#57)
* Make initial dir optional
* Improve termination of background initial process #56
* Added more options to convenience run script
* Added missing l from getopts
* Added missing l from getopts
* 9.5 2.2 (#61)
* Allow changing the default database name (#50)
* Allow changing the default database name (#50)
* Allow changing the default database name (#50) (#52)
* Commented out legacy scripts since it seems they are removed in 2.2
* Added more options to convenience run script
* Added missing l from getopts
* Added missing l from getopts
* Tweak convenience scripts (#62)
* Added missing l from getopts
* allow connection when using docker compose (#65)
see https://github.com/docker/compose/issues/4336
and https://github.com/kartoza/docker-postgis/issues/40
* Install gnupg for fetching keys first
* Fix key fetching
* Updated to 9.6 and postgis 2.4
* Ditch apt-cacher stuff
* Upgraded to PG 10
* change version from postgresql-10.0 to 10 and fix typo in run-postgis… (#76)
* change version from postgresql-10.0 to 10 and fix typo in run-postgis file
* edit setup.sh to version 10
* Change from version 10.0 to 10 in Dockerfile (#75)
I checked that postgresql-10.0 is an invalid name. It should be just postgresql-10
* Fixes for pg 10 to start nicely
* Port 9.6 to develop (#89)
* Part one of porting work from 9.6 to 10
* Backported more scripts from 9.6 branch
* Added missing apt update in dockerfile
* Updates to entrypoint to reference image and update docker-compose to reference 10 pg
* Added sample and docs from 9.6 branch
* Removed my diagram as Rizky had already added one
* Fix env paths for pg 10
* Fixes for backporting work from 9.6 to 10 - dbb now spins up and accepts connections properly
* Update README.md
* Fix #90 and replace references to slave with replicant
(Slave is a pejorative term)
* Backport from branch: 9.6-2.4
Fix default datadir
- Change into default datadir
- Add small unittest
* Merge branch 10 into develop (#113)
* Fix typo in helper script
* Port work in develop to 10 branch (#90)
* Port 9.6 to develop (#89)
* Part one of porting work from 9.6 to 10
* Backported more scripts from 9.6 branch
* Added missing apt update in dockerfile
* Updates to entrypoint to reference image and update docker-compose to reference 10 pg
* Added sample and docs from 9.6 branch
* Removed my diagram as Rizky had already added one
* Fix env paths for pg 10
* Fixes for backporting work from 9.6 to 10 - dbb now spins up and accepts connections properly
* Update README.md
* Backport from branch: 9.6-2.4
Fix default datadir
- Change into default datadir
- Add small unittest
* Optimise PostgreSQL performance and align with the changes done in 9.6
version
* Fix version numbers
* Minor change to correct env file
* Merged 10 branch into develop
* Remove reduntant conf file from dockerfile
* Remove reduntant conf file directive from setup script
* Remove reduntant conf file directive from script
* Port changes for Postgres version 11 (#114)
* Fix typo in helper script
* Port work in develop to 10 branch (#90)
* Port 9.6 to develop (#89)
* Part one of porting work from 9.6 to 10
* Backported more scripts from 9.6 branch
* Added missing apt update in dockerfile
* Updates to entrypoint to reference image and update docker-compose to reference 10 pg
* Added sample and docs from 9.6 branch
* Removed my diagram as Rizky had already added one
* Fix env paths for pg 10
* Fixes for backporting work from 9.6 to 10 - dbb now spins up and accepts connections properly
* Update README.md
* Backport from branch: 9.6-2.4
Fix default datadir
- Change into default datadir
- Add small unittest
* Optimise PostgreSQL performance and align with the changes done in 9.6
version
* Fix version numbers
* Minor change to correct env file
* Merged 10 branch into develop
* Remove reduntant conf file from dockerfile
* Remove reduntant conf file directive from setup script
* Remove reduntant conf file directive from script
* Migrate settings to be compatible with PostgreSQL version 11
* fix ssl setup
* Port changes to 11 branch (#115)
* Fix typo in helper script
* Port work in develop to 10 branch (#90)
* Port 9.6 to develop (#89)
* Part one of porting work from 9.6 to 10
* Backported more scripts from 9.6 branch
* Added missing apt update in dockerfile
* Updates to entrypoint to reference image and update docker-compose to reference 10 pg
* Added sample and docs from 9.6 branch
* Removed my diagram as Rizky had already added one
* Fix env paths for pg 10
* Fixes for backporting work from 9.6 to 10 - dbb now spins up and accepts connections properly
* Update README.md
* Backport from branch: 9.6-2.4
Fix default datadir
- Change into default datadir
- Add small unittest
* Optimise PostgreSQL performance and align with the changes done in 9.6
version
* Fix version numbers
* Minor change to correct env file
* Merged 10 branch into develop
* Remove reduntant conf file from dockerfile
* Remove reduntant conf file directive from setup script
* Remove reduntant conf file directive from script
* Migrate settings to be compatible with PostgreSQL version 11
* fix ssl setup
* Align changes to postgresql version 11
* Set destroy database to false
* Commented out code for destroy database
* Fix version number for build
* Implement conf lock file check (#116)
It will make sure that the conf file will only be generated once
for a given container.
* Added new configuration in recovery.conf and postgres optimisations for master-slave replication
* Added new configuration in recovery.conf and postgres optimisations for master-slave replication (#118)
* Remove template logic and use plain create extension (#119)
* Remove template logic and added option to create multiple databases and extensions
* Fix travis error
* More optimisations for replication
* Fix logic for checking if database exists since we now can create
multiple databases.
* Added Licence file
* add option to mount certificates
* fix comments in PR about mounting SSL
* Align to develop upstream
* Add OGR FDW to the installation and activate it in the docker-compose
* Fix spacing in readme
* Add replication user and enable postgis rasters drivers
* Replicate from restricted IP address
* use replication user for streaming changes
* update README to higlight new changes
* change permisions of default schema to enable replication
* add missing env variables
* Add logic to cater for destroy database on restart. It can be True or False on start and the logic will handle it
* fix for version 12 upgrade
* add postgis raster extension
* Small fixes for postgresql 12
* Modified docker-compose to run against pg 12
* remove duplicated env
* Build point cloud and other custome extension, add plpython and pgcron
pull/165/head
rodzic
ae0607c7e7
commit
0437e00580
24
Dockerfile
24
Dockerfile
|
@ -19,11 +19,19 @@ RUN wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc -O- | a
|
|||
# We add postgis as well to prevent build errors (that we dont see on local builds)
|
||||
# on docker hub e.g.
|
||||
# The following packages have unmet dependencies:
|
||||
RUN apt-get update; apt-get install -y postgresql-client-12 postgresql-common postgresql-12 postgresql-12-postgis-3 netcat postgresql-12-ogr-fdw postgresql-12-postgis-3-scripts
|
||||
RUN apt-get update; apt-get install -y postgresql-client-12 postgresql-common postgresql-12 postgresql-12-postgis-3 \
|
||||
netcat postgresql-12-ogr-fdw postgresql-12-postgis-3-scripts postgresql-12-cron postgresql-plpython3-12
|
||||
|
||||
# Open port 5432 so linked containers can see them
|
||||
EXPOSE 5432
|
||||
ARG PG_EXTENSION=true
|
||||
ADD pg_extensions.sh /
|
||||
RUN chmod +x /pg_extensions.sh
|
||||
|
||||
RUN if [ "$PG_EXTENSION" = true ]; then \
|
||||
apt-get -y update; apt-get -y install build-essential autoconf postgresql-server-dev-12 libxml2-dev zlib1g-dev && /pg_extensions.sh ;\
|
||||
apt-get purge -y postgresql-server-dev-12 build-essential autoconf libxml2-dev zlib1g-dev; \
|
||||
fi;
|
||||
# Run any additional tasks here that are too tedious to put in
|
||||
# this dockerfile directly.
|
||||
ADD env-data.sh /env-data.sh
|
||||
|
@ -39,6 +47,7 @@ ENV LC_ALL en_US.UTF-8
|
|||
RUN update-locale ${LANG}
|
||||
|
||||
# We will run any commands in this when the container starts
|
||||
|
||||
ADD docker-entrypoint.sh /docker-entrypoint.sh
|
||||
ADD setup-conf.sh /
|
||||
ADD setup-database.sh /
|
||||
|
@ -47,17 +56,8 @@ ADD setup-replication.sh /
|
|||
ADD setup-ssl.sh /
|
||||
ADD setup-user.sh /
|
||||
RUN chmod +x /docker-entrypoint.sh
|
||||
RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \
|
||||
&& dpkg --remove --force-depends unzip
|
||||
|
||||
ENTRYPOINT /docker-entrypoint.sh
|
||||
|
||||
# Compile and install PointCloud.
|
||||
# NOTE: release 1.2.0 would not build against PostgreSQL-12:
|
||||
# https://github.com/pgpointcloud/pointcloud/issues/248
|
||||
RUN apt-get -y update; apt-get -y install build-essential autoconf \
|
||||
postgresql-server-dev-12 libxml2-dev zlib1g-dev
|
||||
RUN wget -O- \
|
||||
https://github.com/pgpointcloud/pointcloud/archive/master.tar.gz \
|
||||
| tar xz && \
|
||||
cd pointcloud-master && \
|
||||
./autogen.sh && ./configure && make && make install && \
|
||||
cd .. && rm -Rf pointcloud-master
|
||||
|
|
13
README.md
13
README.md
|
@ -35,7 +35,7 @@ kartoza/postgis:[postgres_version]-[postgis-version]
|
|||
|
||||
So for example:
|
||||
|
||||
``kartoza/postgis:9.6-2.4`` Provides PostgreSQL 9.6, PostGIS 2.4
|
||||
``kartoza/postgis:12.0`` Provides PostgreSQL 12.0, PostGIS 3.0
|
||||
|
||||
**Note:** We highly recommend that you use tagged versions because
|
||||
successive minor versions of PostgreSQL write their database clusters
|
||||
|
@ -78,6 +78,15 @@ Now edit ``71-apt-cacher-ng`` then do:
|
|||
docker build -t kartoza/postgis .
|
||||
```
|
||||
|
||||
## Build with custom extensions
|
||||
The plugin currently install PostGIS official extensions but in some cases users
|
||||
need to build custom extension. Add your build instructions to pg_extensions.sh
|
||||
and then run
|
||||
|
||||
```
|
||||
docker build --build-args PG_EXTENSION=true -t kartoza/postgis:12.0 .
|
||||
```
|
||||
|
||||
## Run
|
||||
|
||||
|
||||
|
@ -169,7 +178,7 @@ You can then go on to use any normal postgresql commands against the container.
|
|||
Under ubuntu 16.04 the postgresql client can be installed like this:
|
||||
|
||||
```
|
||||
sudo apt-get install postgresql-client-9.6
|
||||
sudo apt-get install postgresql-client-12
|
||||
```
|
||||
|
||||
## Running SQL scripts on container startup.
|
||||
|
|
|
@ -95,7 +95,7 @@ if [ -z "${SSL_KEY_FILE}" ]; then
|
|||
fi
|
||||
|
||||
if [ -z "${POSTGRES_MULTIPLE_EXTENSIONS}" ]; then
|
||||
POSTGRES_MULTIPLE_EXTENSIONS='postgis,hstore,postgis_topology,postgis_raster,pointcloud,pointcloud_postgis'
|
||||
POSTGRES_MULTIPLE_EXTENSIONS='postgis,hstore,postgis_topology,postgis_raster'
|
||||
fi
|
||||
|
||||
if [ -z "${ALLOW_IP_RANGE}" ]; then
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Compile and install PointCloud.
|
||||
# NOTE: release 1.2.0 would not build against PostgreSQL-12:
|
||||
# https://github.com/pgpointcloud/pointcloud/issues/248
|
||||
|
||||
wget -O- https://github.com/pgpointcloud/pointcloud/archive/master.tar.gz | tar xz && \
|
||||
cd pointcloud-master && \
|
||||
./autogen.sh && ./configure && make && make install && \
|
||||
cd .. && rm -Rf pointcloud-master
|
||||
|
Ładowanie…
Reference in New Issue