Compare commits

...

4 Commits

Author SHA1 Message Date
Jose Diaz-Gonzalez
9df82c58da Release 1.33.2
Some checks failed
tagged-release / tagged-release (push) Has been cancelled
2023-05-27 22:34:06 -04:00
josegonzalez
ee2d2f10f7 Merge pull request #260 from erickedji/master
fix: create ssl certs outside container
2023-05-27 22:33:27 -04:00
josegonzalez
9f3d24ca9f Merge branch 'master' into master 2023-05-27 19:45:41 -04:00
Komlan KEDJI
09926fbecd fix: create ssl certs outside container
This enables support for alpine-based images like timescaledb (no bash/openssl).

Fixes #153
Fixes timescale/timescaledb-docker#99
2022-09-04 09:37:10 +00:00
4 changed files with 18 additions and 6 deletions

View File

@@ -149,7 +149,9 @@ service_create_container() {
dokku_log_verbose_quiet "Securing connection to database"
service_pause "$SERVICE" >/dev/null
"$DOCKER_BIN" container run --rm -i -v "$SERVICE_HOST_ROOT/data:/var/lib/postgresql/data" "$PLUGIN_IMAGE:$PLUGIN_IMAGE_VERSION" bash -s <"$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/scripts/enable_ssl.sh" &>/dev/null
"$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/scripts/create_ssl_certs.sh" "$SERVICE_HOST_ROOT" &>/dev/null
"$DOCKER_BIN" container run --rm -i -v "$SERVICE_HOST_ROOT/data:/var/lib/postgresql/data" -v "$SERVICE_HOST_ROOT/certs:/var/lib/postgresql/certs" "$PLUGIN_IMAGE:$PLUGIN_IMAGE_VERSION" bash -s <"$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)/scripts/enable_ssl.sh" &>/dev/null
rm -rf "$SERVICE_HOST_ROOT/certs"
suppress_output "$DOCKER_BIN" container start "$(cat "$SERVICE_ROOT/ID")"
service_port_reconcile_status "$SERVICE"

View File

@@ -1,4 +1,4 @@
[plugin]
description = "dokku postgres service plugin"
version = "1.33.1"
version = "1.33.2"
[plugin.config]

7
scripts/create_ssl_certs.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/sh
postgres_service_dir="$1"
cd "$postgres_service_dir"
mkdir certs && cd certs
openssl req -new -newkey rsa:4096 -x509 -days 365000 -nodes -out server.crt -keyout server.key -batch

View File

@@ -1,7 +1,10 @@
#!/bin/bash
pushd /var/lib/postgresql/data >/dev/null
openssl req -new -newkey rsa:4096 -x509 -days 365000 -nodes -out server.crt -keyout server.key -batch
#!/bin/sh
cd /var/lib/postgresql/data
cp ../certs/* .
chown postgres:postgres server.key
chmod 600 server.key
sed -i "s/^#ssl = off/ssl = on/" postgresql.conf
sed -i "s/^#ssl_ciphers =.*/ssl_ciphers = 'AES256+EECDH:AES256+EDH'/" postgresql.conf
popd >/dev/null