diff --git a/Dockerfile b/Dockerfile
index 42e1c468960790ff2c44b910457b66a7abf06d08..5e9c3f32678aae30f984b4dba8b785b1c0c7b07c 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -86,4 +86,4 @@ COPY root/ /
 
 # Communicate ports and volumes to be used
 EXPOSE 8080
-VOLUME /config /data
+VOLUME /config /data /plugins
diff --git a/root/etc/cont-init.d/50-install b/root/etc/cont-init.d/40-install
similarity index 73%
rename from root/etc/cont-init.d/50-install
rename to root/etc/cont-init.d/40-install
index d9800cfb7d105e12b3770defd1e4d5b227e5e2bd..4f2e89f59603e5ddce024b8c235f19dd10bb9e88 100644
--- a/root/etc/cont-init.d/50-install
+++ b/root/etc/cont-init.d/40-install
@@ -6,8 +6,13 @@ if [ ! -f "/config/www/ICEcoder/index.php" ]; then
 		"https://github.com/icecoder/ICEcoder/archive/${ICECODER_VERSION}.zip"
 	cd /tmp || exit
 	unzip -qq install.zip
+	mkdir /plugins
+	mv ICEcoder-*/data/* /data/
+	mv ICEcoder-*/plugins/* /plugins/
 	mv ICEcoder-* /app/ICEcoder
 	cd / || exit
 	rm -rf /tmp/* /config/www/data
+	rm -rf /app/ICEcoder/data
+	rm -rf /app/ICEcoder/plugins
 	chown -R abc:abc /app/ICEcoder
 fi
diff --git a/root/etc/cont-init.d/50-config b/root/etc/cont-init.d/50-config
new file mode 100644
index 0000000000000000000000000000000000000000..e261cd7e625ac917a010e2d6a65679f24e77e058
--- /dev/null
+++ b/root/etc/cont-init.d/50-config
@@ -0,0 +1,11 @@
+#!/usr/bin/with-contenv bash
+
+# Link data, code and plugins
+ln -sf /data /app/ICEcoder/data
+ln -sf /plugins /app/ICEcoder/plugins
+
+# permissions
+chown -R abc:abc \
+/config
+/data
+/plugins
diff --git a/root/etc/cont-init.d/60-config b/root/etc/cont-init.d/60-git
similarity index 74%
rename from root/etc/cont-init.d/60-config
rename to root/etc/cont-init.d/60-git
index 6ad0aebe43dc449c09d386ee363e1bd588d1261a..d24f2925596a3da04e23f89ec3743218b2a150d3 100644
--- a/root/etc/cont-init.d/60-config
+++ b/root/etc/cont-init.d/60-git
@@ -8,11 +8,11 @@ if [ ! -e /lock.file ]; then
     -i /etc/sudoers
   sed -e 's/^wheel:\(.*\)/wheel:\1,abc/g' -i /etc/group
   # create directory for project
-  mkdir -p /app/ICEcoder/data/code
+  mkdir -p /data/code
   # make sure URL is set and folder is empty to clone code
-  if [ ${GITURL+x} ] && [ ! "$(/bin/ls -A /app/ICEcoder/data/code 2>/dev/null)" ] ; then \
+  if [ ${GITURL+x} ] && [ ! "$(/bin/ls -A /data/code 2>/dev/null)" ] ; then \
     # clone the url the user passed to this directory
-    git clone "${GITURL}" /app/ICEcoder/data/code
+    git clone "${GITURL}" /data/code
   fi
 else
   # lock exists not importing project this is a restart
@@ -22,27 +22,18 @@ fi
 # create lock file after first run
 touch /lock.file
 
+# copy php ini for user editing
+[[ ! -e "/config/php/php.ini" ]] && \
+cp /etc/php7/php.ini /config/php/php.ini
+cp /config/php/php.ini /etc/php7/php.ini
+
 # permissions
 mkdir -p /config/sessions
 echo "[cont-init.d] Setting permissions this may take some time"
 chown -R abc:abc \
  /data \
  /config
+ /plugins
 # make our folders
 mkdir -p \
 /config/{log/ICEcoder,php,sess}
-
-# copy php ini for user editing
-[[ ! -e "/config/php/php.ini" ]] && \
-cp /etc/php7/php.ini /config/php/php.ini
-cp /config/php/php.ini /etc/php7/php.ini
-
-# Link data, code and plugins
-rm /data && \
-    ln -sf /app/ICEcoder/data /data
-    ln -sf /app/ICEcoder/plugins /data/plugins
-
-# permissions
-chown -R abc:abc \
-/config
-/data