diff --git a/docker/Dockerfile.onos b/docker/Dockerfile.onos
index 37bdad0..acaa845 100644
--- a/docker/Dockerfile.onos
+++ b/docker/Dockerfile.onos
@@ -1,31 +1,75 @@
-FROM onosproject/onos:1.8
+FROM onosproject/onos:1.8 as build
+MAINTAINER Open Networking Foundation <info@opennetworking.org>
 
-MAINTAINER Zsolt Haraszti <zharaszt@ciena.com>
-MAINTAINER Ali Al-Shabibi <ali.al-shabibi@onlab.us>
-MAINTAINER Nathan Knuth   <nathan.knuth@tibitcom.com>
-
-ENV APPS=/root/onos/apps ONOS=/root/onos KARAF_M2=/root/onos/apache-karaf-3.0.5/system VERSION=1.2-SNAPSHOT
-ENV AUX=$APPS/aux
-
+# Install and configure build tools
 ENV JAVA_OPTS="${JAVA_OPTS:--DenableOFTLS=true -Djavax.net.ssl.keyStore=/home/sdn/wiki/onos.jks -Djavax.net.ssl.keyStorePassword=222222 -Djavax.net.ssl.trustStore=/home/sdn/wiki/onos.jks -Djavax.net.ssl.trustStorePassword=222222}"
 
-RUN apt-get update && apt-get install -y git maven unzip 
-RUN git config --global http.sslverify false && \
-    git clone https://alshabibi@bitbucket.org/alshabibi/onos-apps.git
-    
-RUN cd $ONOS/onos-apps/apps && mvn  -DskipTests=true clean install
+RUN apt-get update && apt-get install -y git maven unzip curl python
+RUN curl -sSL http://commondatastorage.googleapis.com/git-repo-downloads/repo -o /bin/repo && chmod 755 /bin/repo
 
-WORKDIR $ONOS
+# The ENV settings for ONOS, KARAF_VERSION, KARAF_ROOT, KARAF_M2, and APPS_ROOT
+# must be replicated below to the final image as they are shared between stages
+ENV ONOS=/root/onos
+ENV APPS_ROOT=${ONOS}/apps
+ENV KARAF_VERSION=3.0.5
+ENV KARAF_ROOT=${ONOS}/apache-karaf-${KARAF_VERSION}
+ENV KARAF_M2=${KARAF_ROOT}/system
+ENV MANIFEST_BRANCH=master
+ENV BUILD_ROOT=/build
+ENV APP_INSTALL_ROOT=/expand
 
+# Build the applications
+RUN mkdir -p ${BUILD_ROOT}
+WORKDIR ${BUILD_ROOT}
+RUN repo init -u http://gerrit.opencord.org/manifest -b ${MANIFEST_BRANCH} -g onos && repo sync
+WORKDIR ${BUILD_ROOT}/onos-apps/apps
+RUN mvn -DskipTests=true clean install
+
+# Specify application versions to install
+ENV AAA_VERSION=1.2.0-SNAPSHOT \
+	CONFIG_VERSION=1.2.0-SNAPSHOT \
+	IGMP_VERSION=1.2.0-SNAPSHOT \
+	IGMP_PROXY_VERSION=1.0.0-SNAPSHOT \
+	MCAST_VERSION=1.2.0-SNAPSHOT \
+	OLT_VERSION=1.2.0-SNAPSHOT \
+	SADIS_VERSION=1.0.0-SNAPSHOT \
+	VTN_VERSION=1.2.0-SNAPSHOT \
+	L2_DHCP_RELAY_VERSION=1.0.0-SNAPSHOT
+
+ENV APPS="aaa-${AAA_VERSION} \
+	cord-config-${CONFIG_VERSION} \
+	igmp-${IGMP_VERSION} \
+	mcast-${MCAST_VERSION} \
+	olt-app-${OLT_VERSION} \
+	sadis-app-${SADIS_VERSION} \
+	vtn-${VTN_VERSION} \
+        aaa-${AAA_VERSION} \
+        onos-app-igmpproxy-${IGMP_PROXY_VERSION} \
+	dhcpl2relay-${L2_DHCP_RELAY_VERSION}"
+
+# Install the applications
 COPY config/app-install.sh .
+RUN chmod 755 ./app-install.sh && ./app-install.sh
 
-RUN sh $ONOS/app-install.sh
+# Create the final image coping over the installed applications from the build stage
+FROM onosproject/onos:1.8
 
-#RUN touch $ONOS/apps/org.onosproject.dhcp/active
-RUN touch $ONOS/apps/org.onosproject.hostprovider/active
+ENV ONOS=/root/onos
+ENV KARAF_VERSION=3.0.5
+ENV KARAF_ROOT=${ONOS}/apache-karaf-${KARAF_VERSION}
+ENV KARAF_M2=${KARAF_ROOT}/system
+ENV APPS_ROOT=${ONOS}/apps
 
+COPY --from=build ${KARAF_M2}/ ${KARAF_M2}/
+RUN echo "${KARAF_M2} ${APPS_ROOT}"
+COPY --from=build ${APPS_ROOT}/ ${APPS_ROOT}/
 COPY config/netcfg.json $KARAF_ROOT/../config/network-cfg.json
 
+RUN touch $ONOS/apps/org.onosproject.netcfghostprovider/active
+RUN touch $ONOS/apps/org.onosproject.netcfglinksprovider/active
+RUN touch $ONOS/apps/org.onosproject.openflow-base/active
+
 # Create ONOS Key Directory
 RUN mkdir -p /home/sdn/wiki
 COPY onos_cfg/ /home/sdn/wiki
+
diff --git a/docker/config/app-install.sh b/docker/config/app-install.sh
index bc70817..0523886 100644
--- a/docker/config/app-install.sh
+++ b/docker/config/app-install.sh
@@ -1,15 +1,23 @@
-touch $APPS/org.onosproject.openflow-base/active
+#!/bin/bash 
 
-find $ONOS -name "*.oar" -path "*/target/*" | while read line; do 
-    mkdir -p $AUX && cd $AUX 
-    cp $line $AUX
-    jar -xf $AUX/*.oar
-    name=$(grep "name=" $AUX/app.xml | sed 's/<app name="//g;s/".*//g')
-    mkdir -p $APPS/$name
-    cp $AUX/app.xml $APPS/$name/app.xml
-    touch $APPS/$name/active
-    [ -f $AUX/app.png ] && cp $AUX/app.png $APPS/$name/app.png
-    cp $AUX/*.oar $APPS/$name/$name.oar
-    cp -rf $AUX/m2/* $KARAF_M2
-    rm -fr $AUX
+for app in $APPS; do
+    echo "Installing application '$app'"
+    oar=$(find $BUILD_ROOT -path "*/target/*" -name "$app*".oar)
+    if [ "$oar x" == " x" ]; then
+        echo "Required application, $app, not found."
+	continue
+    fi
+    rm -rf $APP_INSTALL_ROOT
+    mkdir -p $APP_INSTALL_ROOT
+    cd $APP_INSTALL_ROOT
+    cp $oar $APP_INSTALL_ROOT
+    jar -xf $APP_INSTALL_ROOT/$(basename $oar)
+    name=$(grep "name=" $APP_INSTALL_ROOT/app.xml | sed 's/<app name="//g;s/".*//g')
+    mkdir -p $APPS_ROOT/$name
+    cp $APP_INSTALL_ROOT/app.xml $APPS_ROOT/$name/app.xml
+    touch $APPS_ROOT/$name/active
+    [ -f $APP_INSTALL_ROOT/app.png ] && cp $APP_INSTALL_ROOT/app.png $APPS_ROOT/$name/app.png
+    cp $APP_INSTALL_ROOT/$(basename $oar) $APPS_ROOT/$name/$name.oar
+    cp -rf $APP_INSTALL_ROOT/m2/* $KARAF_M2
+    rm -rf $APP_INSTALL_ROOT
 done
