diff --git a/11.1/Dockerfile b/11.1/Dockerfile new file mode 100644 index 0000000..43e46d4 --- /dev/null +++ b/11.1/Dockerfile @@ -0,0 +1,11 @@ +# Postgres with ssl enabled +# Uses a self signed cert, not for production use +FROM postgres:11.1 +LABEL maintainer "https://github.com/muccg/" + +ENV DEBIAN_FRONTEND noninteractive +RUN apt-get update && apt-get install -y --no-install-recommends \ + ssl-cert \ + && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* + +ADD docker-entrypoint-initdb.d /docker-entrypoint-initdb.d diff --git a/11.1/docker-entrypoint-initdb.d/devssl.sh b/11.1/docker-entrypoint-initdb.d/devssl.sh new file mode 100644 index 0000000..2dd8d09 --- /dev/null +++ b/11.1/docker-entrypoint-initdb.d/devssl.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +cd "${PGDATA}" +cp /etc/ssl/certs/ssl-cert-snakeoil.pem "${PGDATA}"/server.crt +cp /etc/ssl/private/ssl-cert-snakeoil.key "${PGDATA}"/server.key +chmod og-rwx server.key +chown -R postgres:postgres "${PGDATA}" + +# turn on ssl +sed -ri "s/^#?(ssl\s*=\s*)\S+/\1'on'/" "$PGDATA/postgresql.conf" diff --git a/Readme.md b/Readme.md index 4b306e5..de902fe 100644 --- a/Readme.md +++ b/Readme.md @@ -6,6 +6,7 @@ Uses a self signed cert, not for production use. $ docker-compose up # Connect using stardard postgres client, will verify SSL connection to console. +$ docker run -it --network host --rm postgres:11.1 psql -h localhost -U postgres -p 5435 template1 $ docker run -it --network host --rm postgres:9.6 psql -h localhost -U postgres -p 5434 template1 $ docker run -it --network host --rm postgres:9.5 psql -h localhost -U postgres -p 5433 template1 $ docker run -it --network host --rm postgres:9.4 psql -h localhost -U postgres template1 diff --git a/docker-compose.yml b/docker-compose.yml index bbb5fba..0da2808 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -15,3 +15,8 @@ services: image: muccg/postgres-ssl:9.6 ports: - 5434:5432 + + '11.1': + image: muccg/postgres-ssl:11.1 + ports: + - 5435:5432