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
This commit is contained in:
Komlan KEDJI
2022-09-04 07:11:42 +00:00
parent 674d10ea4d
commit 09926fbecd
3 changed files with 17 additions and 5 deletions

View File

@@ -98,7 +98,9 @@ service_create_container() {
dokku_log_verbose_quiet "Securing connection to database"
service_stop "$SERVICE" >/dev/null
docker 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 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"
PREVIOUS_ID=$(docker ps -aq --no-trunc --filter "status=exited" --filter "name=^/$SERVICE_NAME$" --format '{{ .ID }}') || true
docker start "$PREVIOUS_ID" >/dev/null