From c6058e5ea84503925ca2ac323ee411acc3206ad5 Mon Sep 17 00:00:00 2001
From: Baiju Muthukadan <baiju.m.mail@gmail.com>
Date: Fri, 6 Jun 2014 14:22:54 +0530
Subject: [PATCH] locate docker command during running time

---
 dockerfiles/build.sh | 18 ++++++++++++------
 dockerfiles/run.sh   | 10 ++++++++--
 2 files changed, 20 insertions(+), 8 deletions(-)

diff --git a/dockerfiles/build.sh b/dockerfiles/build.sh
index 0b7cc2ff11..b658db4ecd 100755
--- a/dockerfiles/build.sh
+++ b/dockerfiles/build.sh
@@ -10,6 +10,12 @@ HOST_PORT="YOUR_HOST_PORT"        # The port on host, which will be redirected t
 # apt source, you can select 'nchc'(mirror in Taiwan) or 'aliyun'(best for mainlance China users) according to your network, if you could connect to the official unbunt mirror in a fast speed, just leave it to "".
 APT_SOURCE=""
 
+DOCKER_BIN=$(which docker.io || which docker)
+if [ -z "$DOCKER_BIN" ] ; then
+    echo "Please install docker. You can install docker by running \"wget -qO- https://get.docker.io/ | sh\"."
+    exit 1
+fi
+
 # Replace the database root password in database image Dockerfile.
 sed -i "s/THE_DB_PASSWORD/$DB_PASSWORD/g" images/$DB_TYPE/Dockerfile
 # Replace the database root password in gogits image deploy.sh file. 
@@ -36,22 +42,22 @@ if [ $MEM_TYPE != "" ]
   sed -i "${GOGS_BUILD_LINE}s/$/ -tags $MEM_TYPE/" images/gogits/Dockerfile
 
   cd images/$MEM_TYPE
-  docker.io build -t gogits/$MEM_TYPE .
-  docker.io run -d --name $MEM_RUN_NAME gogits/$MEM_TYPE
+  $DOCKER_BIN build -t gogits/$MEM_TYPE .
+  $DOCKER_BIN run -d --name $MEM_RUN_NAME gogits/$MEM_TYPE
   MEM_LINK=" --link $MEM_RUN_NAME:mem "
   cd ../../
 fi
 
 # Build the database image
 cd images/$DB_TYPE
-docker.io build -t gogits/$DB_TYPE .
+$DOCKER_BIN build -t gogits/$DB_TYPE .
 #
 
 
 ## Build the gogits image
 cd ../gogits
 
-docker.io build -t gogits/gogs .
+$DOCKER_BIN build -t gogits/gogs .
 
 #sed -i "s#RUN go get -u -tags $MEM_TYPE github.com/gogits/gogs#RUN go get -u github.com/gogits/gogs#g" Dockerfile
 
@@ -60,9 +66,9 @@ sed -i "s/ -tags $MEM_TYPE//" Dockerfile
 
 #
 ## Run MySQL image with name
-docker.io run -d --name $DB_RUN_NAME gogits/$DB_TYPE
+$DOCKER_BIN run -d --name $DB_RUN_NAME gogits/$DB_TYPE
 #
 ## Run gogits image and link it to the database image
 echo "Now we have the $DB_TYPE image(running) and gogs image, use the follow command to start gogs service:"
-echo -e "\033[33m docker.io run -i -t --link $DB_RUN_NAME:db $MEM_LINK -p $HOST_PORT:3000 gogits/gogs \033[0m"
+echo -e "\033[33m $DOCKER_BIN run -i -t --link $DB_RUN_NAME:db $MEM_LINK -p $HOST_PORT:3000 gogits/gogs \033[0m"
 
diff --git a/dockerfiles/run.sh b/dockerfiles/run.sh
index a199442453..cef2ebb81f 100755
--- a/dockerfiles/run.sh
+++ b/dockerfiles/run.sh
@@ -5,9 +5,15 @@ typeset -u MYSQL_ALIAS
 MYSQL_ALIAS="db"
 HOST_PORT="3000"
 
+DOCKER_BIN=$(which docker.io || which docker)
+if [ -z "$DOCKER_BIN" ] ; then
+    echo "Please install docker. You can install docker by running \"wget -qO- https://get.docker.io/ | sh\"."
+    exit 1
+fi
+
 ## Run MySQL image with name
-docker.io run -d --name $MYSQL_RUN_NAME gogs/mysql
+$DOCKER_BIN run -d --name $MYSQL_RUN_NAME gogs/mysql
 #
 ## Run gogits image and link it to the MySQL image
-docker.io run --link $MYSQL_RUN_NAME:$MYSQL_ALIAS -p $HOST_PORT:3000 gogs/gogits
+$DOCKER_BIN run --link $MYSQL_RUN_NAME:$MYSQL_ALIAS -p $HOST_PORT:3000 gogs/gogits