diff --git a/Dockerfile b/Dockerfile index ee9c3d0..8f76803 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,2 +1,2 @@ -FROM postgres:9.6 +FROM postgres COPY create-multiple-postgresql-databases.sh /docker-entrypoint-initdb.d/ diff --git a/README.md b/README.md index 3db6ca3..56c5495 100644 --- a/README.md +++ b/README.md @@ -34,10 +34,20 @@ Clone the repository, mount its directory as a volume into ### By building a custom image Clone the repository, build and push the image to your Docker repository, -for example for Google Private Repository do the following: +For Docker Hub Registry - docker build --tag=eu.gcr.io/your-project/postgres-multi-db . - gcloud docker -- push eu.gcr.io/your-project/postgres-multi-db +```sh +docker build -t /postgres-multi-db . +docker login +docker push /postgres-multi-db +``` + +For Google Private Repository do the following: + +```sh +docker build --tag=eu.gcr.io/your-project/postgres-multi-db . +gcloud docker -- push eu.gcr.io/your-project/postgres-multi-db +``` You still need to pass the `POSTGRES_MULTIPLE_DATABASES` environment variable to the container: diff --git a/create-multiple-postgresql-databases.sh b/create-multiple-postgresql-databases.sh index aa665fa..46c19cb 100755 --- a/create-multiple-postgresql-databases.sh +++ b/create-multiple-postgresql-databases.sh @@ -5,17 +5,15 @@ set -u function create_user_and_database() { local database=$1 - echo " Creating user and database '$database'" + echo " Creating database '$database'" psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL - CREATE USER $database; CREATE DATABASE $database; - GRANT ALL PRIVILEGES ON DATABASE $database TO $database; EOSQL } -if [ -n "$POSTGRES_MULTIPLE_DATABASES" ]; then - echo "Multiple database creation requested: $POSTGRES_MULTIPLE_DATABASES" - for db in $(echo $POSTGRES_MULTIPLE_DATABASES | tr ',' ' '); do +if [ -n "$POSTGRES_MULTI_DB" ]; then + echo "Multiple database creation requested: $POSTGRES_MULTI_DB" + for db in $(echo $POSTGRES_MULTI_DB | tr ',' ' '); do create_user_and_database $db done echo "Multiple databases created"