diff --git a/10/alpine/docker-entrypoint.sh b/10/alpine/docker-entrypoint.sh index d95a37fb3a..0bb571c8a5 100755 --- a/10/alpine/docker-entrypoint.sh +++ b/10/alpine/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/10/docker-entrypoint.sh b/10/docker-entrypoint.sh index 69155541bb..aeff591ee9 100755 --- a/10/docker-entrypoint.sh +++ b/10/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/11/alpine/docker-entrypoint.sh b/11/alpine/docker-entrypoint.sh index d95a37fb3a..0bb571c8a5 100755 --- a/11/alpine/docker-entrypoint.sh +++ b/11/alpine/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/11/docker-entrypoint.sh b/11/docker-entrypoint.sh index 69155541bb..aeff591ee9 100755 --- a/11/docker-entrypoint.sh +++ b/11/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/12/alpine/docker-entrypoint.sh b/12/alpine/docker-entrypoint.sh index d95a37fb3a..0bb571c8a5 100755 --- a/12/alpine/docker-entrypoint.sh +++ b/12/alpine/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/12/docker-entrypoint.sh b/12/docker-entrypoint.sh index 69155541bb..aeff591ee9 100755 --- a/12/docker-entrypoint.sh +++ b/12/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/13/alpine/docker-entrypoint.sh b/13/alpine/docker-entrypoint.sh index d95a37fb3a..0bb571c8a5 100755 --- a/13/alpine/docker-entrypoint.sh +++ b/13/alpine/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/13/docker-entrypoint.sh b/13/docker-entrypoint.sh index 69155541bb..aeff591ee9 100755 --- a/13/docker-entrypoint.sh +++ b/13/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/9.5/alpine/docker-entrypoint.sh b/9.5/alpine/docker-entrypoint.sh index 7c82faea26..8c57b635c6 100755 --- a/9.5/alpine/docker-entrypoint.sh +++ b/9.5/alpine/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/9.5/docker-entrypoint.sh b/9.5/docker-entrypoint.sh index ed16fa48b1..c49ad0d52c 100755 --- a/9.5/docker-entrypoint.sh +++ b/9.5/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/9.6/alpine/docker-entrypoint.sh b/9.6/alpine/docker-entrypoint.sh index 7c82faea26..8c57b635c6 100755 --- a/9.6/alpine/docker-entrypoint.sh +++ b/9.6/alpine/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/9.6/docker-entrypoint.sh b/9.6/docker-entrypoint.sh index ed16fa48b1..c49ad0d52c 100755 --- a/9.6/docker-entrypoint.sh +++ b/9.6/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index 69155541bb..aeff591ee9 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -189,7 +189,13 @@ docker_process_sql() { # create initial database # uses environment variables for input: POSTGRES_DB docker_setup_db() { - if [ "$POSTGRES_DB" != 'postgres' ]; then + local dbAlreadyExists + dbAlreadyExists="$( + POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" --tuples-only <<-'EOSQL' + SELECT 1 FROM pg_database WHERE datname = :'db' ; + EOSQL + )" + if [ -z "$dbAlreadyExists" ]; then POSTGRES_DB= docker_process_sql --dbname postgres --set db="$POSTGRES_DB" <<-'EOSQL' CREATE DATABASE :"db" ; EOSQL