From d2785a275b936ce69a1511003556bf4316dd41d4 Mon Sep 17 00:00:00 2001 From: Sameer Naik Date: Mon, 16 Jan 2017 10:24:51 +0530 Subject: [PATCH 1/2] adds postgresql support --- bitnami/express/docker-compose-postgresql.yml | 20 +++++++++++++++++++ bitnami/express/rootfs/app-entrypoint.sh | 10 +++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 bitnami/express/docker-compose-postgresql.yml diff --git a/bitnami/express/docker-compose-postgresql.yml b/bitnami/express/docker-compose-postgresql.yml new file mode 100644 index 000000000000..236d45618a90 --- /dev/null +++ b/bitnami/express/docker-compose-postgresql.yml @@ -0,0 +1,20 @@ +version: '2' + +services: + postgresql: + image: bitnami/postgresql:latest + environment: + - POSTGRESQL_DATABASE=my_app_development + + myapp: + tty: true # Enables debugging capabilities when attached to this container. + image: bitnami/express:latest + environment: + - PORT=3000 + - DATABASE_URL=postgres://postgres@postgresql/my_app_development + depends_on: + - postgresql + ports: + - 3000:3000 + volumes: + - .:/app diff --git a/bitnami/express/rootfs/app-entrypoint.sh b/bitnami/express/rootfs/app-entrypoint.sh index 5c9da4a3beaa..4891eb57b8ec 100755 --- a/bitnami/express/rootfs/app-entrypoint.sh +++ b/bitnami/express/rootfs/app-entrypoint.sh @@ -19,7 +19,7 @@ dependencies_up_to_date() { } database_tier_exists() { - [ -n "$(getent hosts mongodb mariadb)" ] + [ -n "$(getent hosts mongodb mariadb postgresql)" ] } __wait_for_db() { @@ -50,6 +50,10 @@ wait_for_db() { if getent hosts mariadb >/dev/null; then __wait_for_db mariadb 3306 fi + + if getent hosts postgresql >/dev/null; then + __wait_for_db postgresql 5432 + fi } add_database_support() { @@ -60,6 +64,10 @@ add_database_support() { if getent hosts mariadb >/dev/null && ! npm ls mysql >/dev/null; then npm install --save mysql fi + + if getent hosts postgresql >/dev/null && ! npm ls pg pg-hstore >/dev/null; then + npm install --save pg pg-hstore + fi } log () { From 6afd24a1df587e52b3e6ae294cf084184f59ad0b Mon Sep 17 00:00:00 2001 From: Sameer Naik Date: Mon, 16 Jan 2017 10:25:25 +0530 Subject: [PATCH 2/2] display database port in status messages --- bitnami/express/rootfs/app-entrypoint.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bitnami/express/rootfs/app-entrypoint.sh b/bitnami/express/rootfs/app-entrypoint.sh index 4891eb57b8ec..4c8f9d51a69b 100755 --- a/bitnami/express/rootfs/app-entrypoint.sh +++ b/bitnami/express/rootfs/app-entrypoint.sh @@ -27,7 +27,7 @@ __wait_for_db() { local port=$2 local ip_address=$(getent hosts $1 | awk '{ print $1 }') - log "Connecting to at $host server at $ip_address" + log "Connecting to at $host server at $ip_address:$port" counter=0 until nc -z $ip_address $port; do @@ -36,7 +36,7 @@ __wait_for_db() { log "Error: Couldn't connect to $host server." return 1 fi - log "Trying to connect to $host server at $ip_address. Attempt $counter." + log "Trying to connect to $host server at $ip_address:$port. Attempt $counter." sleep 5 done log "Connected to $host server"