diff --git a/asterix-docker/docker/.gitattributes b/asterix-docker/docker/.gitattributes
new file mode 100644
index 0000000..399e6a7
--- /dev/null
+++ b/asterix-docker/docker/.gitattributes
@@ -0,0 +1 @@
+*.adm binary
diff --git a/asterix-docker/docker/Dockerfile b/asterix-docker/docker/Dockerfile
new file mode 100644
index 0000000..9303bce
--- /dev/null
+++ b/asterix-docker/docker/Dockerfile
@@ -0,0 +1,43 @@
+#/*
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
+FROM centos
+MAINTAINER AsterixDB Team
+
+RUN echo 'LANG="en_US.UTF-8"' > /etc/sysconfig/i18n ;echo 'ZONE="America/Los_Angeles"' > /etc/sysconfig/clock ;cp -a /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
+RUN echo "include_only=.us" >> /etc/yum/pluginconf.d/fastestmirror.conf
+RUN yum install -y unzip java-1.7.0-openjdk openssh-server openssh-clients python-setuptools wget curl
+RUN easy_install supervisor
+RUN mkdir /asterixdb
+COPY asterix-server*.zip .
+RUN unzip asterix-server*.zip -d /asterixdb/
+COPY asterix-configuration.xml /asterixdb/bin/asterix-configuration.xml
+COPY supervisord.conf /etc/supervisord.conf
+COPY twu.adm /asterixdb/twu.adm
+COPY twm.adm /asterixdb/twm.adm
+COPY fbu.adm /asterixdb/fbu.adm
+COPY fbm.adm /asterixdb/fbm.adm
+
+WORKDIR /asterixdb/bin
+ENV JAVA_HOME /usr/lib/jvm/jre-1.7.0
+ENV JAVA_OPTS -Xmx1536m
+EXPOSE 19001 19002 8888 19003 50031
+
+ENTRYPOINT /bin/bash -c '/usr/bin/supervisord'
+
+
diff --git a/asterix-docker/docker/asterix-configuration.xml b/asterix-docker/docker/asterix-configuration.xml
new file mode 100644
index 0000000..aa68ea7
--- /dev/null
+++ b/asterix-docker/docker/asterix-configuration.xml
@@ -0,0 +1,266 @@
+<!--
+ ! Licensed to the Apache Software Foundation (ASF) under one
+ ! or more contributor license agreements.  See the NOTICE file
+ ! distributed with this work for additional information
+ ! regarding copyright ownership.  The ASF licenses this file
+ ! to you under the Apache License, Version 2.0 (the
+ ! "License"); you may not use this file except in compliance
+ ! with the License.  You may obtain a copy of the License at
+ !
+ !   http://www.apache.org/licenses/LICENSE-2.0
+ !
+ ! Unless required by applicable law or agreed to in writing,
+ ! software distributed under the License is distributed on an
+ ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ! KIND, either express or implied.  See the License for the
+ ! specific language governing permissions and limitations
+ ! under the License.
+ !-->
+
+<asterixConfiguration xmlns="asterixconf">
+    <instanceName>docker-minitest</instanceName>
+    <metadataNode>nc1</metadataNode>
+    <store>
+        <ncId>nc1</ncId>
+        <storeDirs>storage1</storeDirs>
+    </store>
+    <store>
+        <ncId>nc2</ncId>
+        <storeDirs>storage2</storeDirs>
+    </store>
+    <coredump>
+        <ncId>nc1</ncId>
+        <coredumpPath>/asterixdb/</coredumpPath>
+        <ncId>nc2</ncId>
+        <coredumpPath>/asterixdb/</coredumpPath>
+    </coredump>
+    <transactionLogDir>
+        <ncId>nc1</ncId>
+        <txnLogDirPath>/asterixdb/txnLogs1/</txnLogDirPath>
+    </transactionLogDir>
+    <transactionLogDir>
+        <ncId>nc2</ncId>
+        <txnLogDirPath>/asterixdb/txnLogs2/</txnLogDirPath>
+    </transactionLogDir>
+
+    <property>
+        <name>nc.java.opts</name>
+        <value>-Xmx1536m</value>
+        <description>JVM parameters for each Node Contoller (NC)</description>
+    </property>
+
+    <property>
+        <name>cc.java.opts</name>
+        <value>-Xmx1024m</value>
+        <description>JVM parameters for each Cluster Contoller (CC)
+        </description>
+    </property>
+
+        <property>
+                <name>max.wait.active.cluster</name>
+                <value>60</value>
+                <description>Maximum wait (in seconds) for a cluster to be ACTIVE (all nodes are available)
+                        before a submitted query/statement can be executed. (Default = 60 seconds)
+                </description>
+        </property>
+
+    <property>
+        <name>storage.buffercache.pagesize</name>
+        <value>131072</value>
+        <description>The page size in bytes for pages in the buffer cache.
+            (Default = "131072" // 128KB)
+        </description>
+    </property>
+
+    <property>
+        <name>storage.buffercache.size</name>
+        <value>536870912</value>
+        <description>The size of memory allocated to the disk buffer cache.
+            The value should be a multiple of the buffer cache page size(Default
+            = "536870912" // 512MB)
+        </description>
+    </property>
+
+    <property>
+        <name>storage.buffercache.maxopenfiles</name>
+        <value>214748364</value>
+        <description>The maximum number of open files in the buffer cache.
+            (Default = "214748364")
+        </description>
+    </property>
+
+    <property>
+        <name>storage.memorycomponent.pagesize</name>
+        <value>131072</value>
+        <description>The page size in bytes for pages allocated to memory
+            components. (Default = "131072" // 128KB)
+        </description>
+    </property>
+
+    <property>
+        <name>storage.memorycomponent.numpages</name>
+        <value>256</value>
+        <description>The number of pages to allocate for a memory component.
+            (Default = 256)
+        </description>
+    </property>
+    <property>
+        <name>storage.metadata.memorycomponent.numpages</name>
+        <value>64</value>
+        <description>The number of pages to allocate for a memory component.
+            (Default = 64)
+        </description>
+    </property>
+
+    <property>
+        <name>storage.memorycomponent.numcomponents</name>
+        <value>2</value>
+        <description>The number of memory components to be used per lsm index.
+            (Default = 2)
+        </description>
+    </property>
+
+    <property>
+        <name>storage.memorycomponent.globalbudget</name>
+        <value>536870912</value>
+        <description>The total size of memory in bytes that the sum of all
+            open memory
+            components cannot exceed. (Default = "536870192" // 512MB)
+        </description>
+    </property>
+
+    <property>
+        <name>storage.lsm.bloomfilter.falsepositiverate</name>
+        <value>0.01</value>
+        <description>The maximum acceptable false positive rate for bloom
+            filters associated with LSM indexes. (Default = "0.01" // 1%)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.log.buffer.numpages</name>
+        <value>8</value>
+        <description>The number of in-memory log buffer pages. (Default = "8")
+        </description>
+    </property>
+
+    <property>
+        <name>txn.log.buffer.pagesize</name>
+        <value>524288</value>
+        <description>The size of pages in the in-memory log buffer. (Default =
+            "524288" // 512KB)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.log.partitionsize</name>
+        <value>2147483648</value>
+        <description>The maximum size of a log file partition allowed before
+            rotating the log to the next partition. (Default = "2147483648" //
+            2GB)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.log.checkpoint.lsnthreshold</name>
+        <value>67108864</value>
+        <description>The size of the window that the maximum LSN is allowed to
+            be ahead of the checkpoint LSN by. (Default = ""67108864" // 64M)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.log.checkpoint.pollfrequency</name>
+        <value>120</value>
+        <description>The time in seconds between that the checkpoint thread
+            waits between polls. (Default = "120" // 120s)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.log.checkpoint.history</name>
+        <value>0</value>
+        <description>The number of old log partition files to keep before
+            discarding. (Default = "0")
+        </description>
+    </property>
+
+    <property>
+        <name>txn.lock.escalationthreshold</name>
+        <value>1000</value>
+        <description>The number of entity level locks that need to be acquired
+            before the locks are coalesced and escalated into a dataset level
+            lock. (Default = "1000")
+        </description>
+    </property>
+
+    <property>
+        <name>txn.lock.shrinktimer</name>
+        <value>5000</value>
+        <description>The time in milliseconds to wait before deallocating
+            unused lock manager memory. (Default = "5000" // 5s)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.lock.timeout.waitthreshold</name>
+        <value>60000</value>
+        <description>The time in milliseconds to wait before labeling a
+            transaction which has been waiting for a lock timed-out. (Default =
+            "60000" // 60s)
+        </description>
+    </property>
+
+    <property>
+        <name>txn.lock.timeout.sweepthreshold</name>
+        <value>10000</value>
+        <description>The time in milliseconds the timeout thread waits between
+            sweeps to detect timed-out transactions. (Default = "10000" // 10s)
+        </description>
+    </property>
+
+    <property>
+        <name>compiler.sortmemory</name>
+        <value>33554432</value>
+        <description>The amount of memory in bytes given to sort operations.
+            (Default = "33554432" // 32mb)
+        </description>
+    </property>
+
+    <property>
+        <name>compiler.joinmemory</name>
+        <value>33554432</value>
+        <description>The amount of memory in bytes given to join operations.
+            (Default = "33554432" // 32mb)
+        </description>
+    </property>
+
+    <property>
+        <name>compiler.framesize</name>
+        <value>131072</value>
+        <description>The Hyracks frame size that the compiler configures per
+            job. (Default = "131072" // 128KB)
+        </description>
+    </property>
+
+    <property>
+        <name>web.port</name>
+        <value>19001</value>
+        <description>The port for the ASTERIX web interface. (Default = 19001)
+        </description>
+    </property>
+
+    <property>
+        <name>api.port</name>
+        <value>19002</value>
+        <description>The port for the ASTERIX API server. (Default = 19002)
+        </description>
+    </property>
+
+    <property>
+        <name>log.level</name>
+        <value>INFO</value>
+        <description>The minimum log level to be displayed. (Default = INFO)
+        </description>
+    </property>
+</asterixConfiguration>
diff --git a/asterix-docker/docker/fbm.adm b/asterix-docker/docker/fbm.adm
new file mode 100644
index 0000000..58d7f08
--- /dev/null
+++ b/asterix-docker/docker/fbm.adm
@@ -0,0 +1,15 @@
+{"message-id":1,"author-id":3,"in-response-to":2,"sender-location":point("47.16,77.75"),"message":" love sprint its shortcut-menu is awesome:)"}
+{"message-id":2,"author-id":1,"in-response-to":4,"sender-location":point("41.66,80.87"),"message":" dislike iphone its touch-screen is horrible"}
+{"message-id":3,"author-id":2,"in-response-to":4,"sender-location":point("48.09,81.01"),"message":" like samsung the plan is amazing"}
+{"message-id":4,"author-id":1,"in-response-to":2,"sender-location":point("37.73,97.04"),"message":" can't stand at&t the network is horrible:("}
+{"message-id":5,"author-id":6,"in-response-to":2,"sender-location":point("34.7,90.76"),"message":" love sprint the customization is mind-blowing"}
+{"message-id":6,"author-id":2,"in-response-to":1,"sender-location":point("31.5,75.56"),"message":" like t-mobile its platform is mind-blowing"}
+{"message-id":7,"author-id":5,"in-response-to":15,"sender-location":point("32.91,85.05"),"message":" dislike sprint the speed is horrible"}
+{"message-id":8,"author-id":1,"in-response-to":11,"sender-location":point("40.33,80.87"),"message":" like verizon the 3G is awesome:)"}
+{"message-id":9,"author-id":3,"in-response-to":12,"sender-location":point("34.45,96.48"),"message":" love verizon its wireless is good"}
+{"message-id":10,"author-id":1,"in-response-to":12,"sender-location":point("42.5,70.01"),"message":" can't stand motorola the touch-screen is terrible"}
+{"message-id":11,"author-id":1,"in-response-to":1,"sender-location":point("38.97,77.49"),"message":" can't stand at&t its plan is terrible"}
+{"message-id":12,"author-id":10,"in-response-to":6,"sender-location":point("42.26,77.76"),"message":" can't stand t-mobile its voicemail-service is OMG:("}
+{"message-id":13,"author-id":10,"in-response-to":4,"sender-location":point("42.77,78.92"),"message":" dislike iphone the voice-command is bad:("}
+{"message-id":14,"author-id":9,"in-response-to":12,"sender-location":point("41.33,85.28"),"message":" love at&t its 3G is good:)"}
+{"message-id":15,"author-id":7,"in-response-to":11,"sender-location":point("44.47,67.11"),"message":" like iphone the voicemail-service is awesome"}
diff --git a/asterix-docker/docker/fbu.adm b/asterix-docker/docker/fbu.adm
new file mode 100644
index 0000000..7e99ea4
--- /dev/null
+++ b/asterix-docker/docker/fbu.adm
@@ -0,0 +1,10 @@
+{"id":1,"alias":"Margarita","name":"MargaritaStoddard","user-since":datetime("2012-08-20T10:10:00"),"friend-ids":{{2,3,6,10}},"employment":[{"organization-name":"Codetechno","start-date":date("2006-08-06")}]}
+{"id":2,"alias":"Isbel","name":"IsbelDull","user-since":datetime("2011-01-22T10:10:00"),"friend-ids":{{1,4}},"employment":[{"organization-name":"Hexviafind","start-date":date("2010-04-27")}]}
+{"id":3,"alias":"Emory","name":"EmoryUnk","user-since":datetime("2012-07-10T10:10:00"),"friend-ids":{{1,5,8,9}},"employment":[{"organization-name":"geomedia","start-date":date("2010-06-17"),"end-date":date("2010-01-26")}]}
+{"id":4,"alias":"Nicholas","name":"NicholasStroh","user-since":datetime("2010-12-27T10:10:00"),"friend-ids":{{2}},"employment":[{"organization-name":"Zamcorporation","start-date":date("2010-06-08")}]}
+{"id":5,"alias":"Von","name":"VonKemble","user-since":datetime("2010-01-05T10:10:00"),"friend-ids":{{3,6,10}},"employment":[{"organization-name":"Kongreen","start-date":date("2010-11-27")}]}
+{"id":6,"alias":"Willis","name":"WillisWynne","user-since":datetime("2005-01-17T10:10:00"),"friend-ids":{{1,3,7}},"employment":[{"organization-name":"jaydax","start-date":date("2009-05-15")}]}
+{"id":7,"alias":"Suzanna","name":"SuzannaTillson","user-since":datetime("2012-08-07T10:10:00"),"friend-ids":{{6}},"employment":[{"organization-name":"Labzatron","start-date":date("2011-04-19")}]}
+{"id":8,"alias":"Nila","name":"NilaMilliron","user-since":datetime("2008-01-01T10:10:00"),"friend-ids":{{3}},"employment":[{"organization-name":"Plexlane","start-date":date("2010-02-28")}]}
+{"id":9,"alias":"Woodrow","name":"WoodrowNehling","user-since":datetime("2005-09-20T10:10:00"),"friend-ids":{{3,10}},"employment":[{"organization-name":"Zuncan","start-date":date("2003-04-22"),"end-date":date("2009-12-13")}]}
+{"id":10,"alias":"Bram","name":"BramHatch","user-since":datetime("2010-10-16T10:10:00"),"friend-ids":{{1,5,9}},"employment":[{"organization-name":"physcane","start-date":date("2007-06-05"),"end-date":date("2011-11-05")}]}
diff --git a/asterix-docker/docker/supervisord.conf b/asterix-docker/docker/supervisord.conf
new file mode 100644
index 0000000..acce92e
--- /dev/null
+++ b/asterix-docker/docker/supervisord.conf
@@ -0,0 +1,40 @@
+; Licensed to the Apache Software Foundation (ASF) under one
+; or more contributor license agreements.  See the NOTICE file
+; distributed with this work for additional information
+; regarding copyright ownership.  The ASF licenses this file
+; to you under the Apache License, Version 2.0 (the
+; "License"); you may not use this file except in compliance
+; with the License.  You may obtain a copy of the License at
+;
+;   http://www.apache.org/licenses/LICENSE-2.0
+;
+; Unless required by applicable law or agreed to in writing,
+; software distributed under the License is distributed on an
+; "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+; KIND, either express or implied.  See the License for the
+; specific language governing permissions and limitations
+; under the License.
+
+[supervisord]
+nodaemon=true
+
+[program:asterixcc]
+command=/asterixdb/bin/asterixcc -cluster-net-ip-address localhost -client-net-ip-address localhost
+stdout_logfile=/dev/stdout
+stdout_logfile_maxbytes=0
+stderr_logfile=/dev/stderr
+stderr_logfile_maxbytes=0
+
+[program:asterixnc1]
+command=/asterixdb/bin/asterixnc -node-id nc1 -cc-host localhost -iodevices /asterixdb/nc1 -cluster-net-ip-address localhost -data-ip-address localhost -result-ip-address localhost -- -metadata-port 50031
+stdout_logfile=/dev/stdout
+stdout_logfile_maxbytes=0
+stderr_logfile=/dev/stderr
+stderr_logfile_maxbytes=0
+
+[program:asterixnc2]
+command=/asterixdb/bin/asterixnc -node-id nc2 -cc-host localhost -iodevices /asterixdb/nc2 -cluster-net-ip-address localhost -data-ip-address localhost -result-ip-address localhost -- -metadata-port 50031
+stdout_logfile=/dev/stdout
+stdout_logfile_maxbytes=0
+stderr_logfile=/dev/stderr
+stderr_logfile_maxbytes=0
diff --git a/asterix-docker/docker/twm.adm b/asterix-docker/docker/twm.adm
new file mode 100644
index 0000000..fa764af
--- /dev/null
+++ b/asterix-docker/docker/twm.adm
@@ -0,0 +1,12 @@
+{"tweetid":"1","user":{"screen-name":"NathanGiesen@211","lang":"en","friends_count":39339,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416},"sender-location":point("47.44,80.65"),"send-time":datetime("2008-04-26T10:10:00"),"referred-topics":{{"t-mobile","customization"}},"message-text":" love t-mobile its customization is good:)"}
+{"tweetid":"2","user":{"screen-name":"ColineGeyer@63","lang":"en","friends_count":121,"statuses_count":362,"name":"Coline Geyer","followers_count":17159},"sender-location":point("32.84,67.14"),"send-time":datetime("2010-05-13T10:10:00"),"referred-topics":{{"verizon","shortcut-menu"}},"message-text":" like verizon its shortcut-menu is awesome:)"}
+{"tweetid":"3","user":{"screen-name":"NathanGiesen@211","lang":"en","friends_count":39339,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416},"sender-location":point("29.72,75.8"),"send-time":datetime("2006-11-04T10:10:00"),"referred-topics":{{"motorola","speed"}},"message-text":" like motorola the speed is good:)"}
+{"tweetid":"4","user":{"screen-name":"NathanGiesen@211","lang":"en","friends_count":39339,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416},"sender-location":point("39.28,70.48"),"send-time":datetime("2011-12-26T10:10:00"),"referred-topics":{{"sprint","voice-command"}},"message-text":" like sprint the voice-command is mind-blowing:)"}
+{"tweetid":"5","user":{"screen-name":"NathanGiesen@211","lang":"en","friends_count":39339,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416},"sender-location":point("40.09,92.69"),"send-time":datetime("2006-08-04T10:10:00"),"referred-topics":{{"motorola","speed"}},"message-text":" can't stand motorola its speed is terrible:("}
+{"tweetid":"6","user":{"screen-name":"ColineGeyer@63","lang":"en","friends_count":121,"statuses_count":362,"name":"Coline Geyer","followers_count":17159},"sender-location":point("47.51,83.99"),"send-time":datetime("2010-05-07T10:10:00"),"referred-topics":{{"iphone","voice-clarity"}},"message-text":" like iphone the voice-clarity is good:)"}
+{"tweetid":"7","user":{"screen-name":"ChangEwing_573","lang":"en","friends_count":182,"statuses_count":394,"name":"Chang Ewing","followers_count":32136},"sender-location":point("36.21,72.6"),"send-time":datetime("2011-08-25T10:10:00"),"referred-topics":{{"samsung","platform"}},"message-text":" like samsung the platform is good"}
+{"tweetid":"8","user":{"screen-name":"NathanGiesen@211","lang":"en","friends_count":39339,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416},"sender-location":point("46.05,93.34"),"send-time":datetime("2005-10-14T10:10:00"),"referred-topics":{{"t-mobile","shortcut-menu"}},"message-text":" like t-mobile the shortcut-menu is awesome:)"}
+{"tweetid":"9","user":{"screen-name":"NathanGiesen@211","lang":"en","friends_count":39339,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416},"sender-location":point("36.86,74.62"),"send-time":datetime("2012-07-21T10:10:00"),"referred-topics":{{"verizon","voicemail-service"}},"message-text":" love verizon its voicemail-service is awesome"}
+{"tweetid":"10","user":{"screen-name":"ColineGeyer@63","lang":"en","friends_count":121,"statuses_count":362,"name":"Coline Geyer","followers_count":17159},"sender-location":point("29.15,76.53"),"send-time":datetime("2008-01-26T10:10:00"),"referred-topics":{{"verizon","voice-clarity"}},"message-text":" hate verizon its voice-clarity is OMG:("}
+{"tweetid":"11","user":{"screen-name":"NilaMilliron_tw","lang":"en","friends_count":445,"statuses_count":164,"name":"Nila Milliron","followers_count":22649},"sender-location":point("37.59,68.42"),"send-time":datetime("2008-03-09T10:10:00"),"referred-topics":{{"iphone","platform"}},"message-text":" can't stand iphone its platform is terrible"}
+{"tweetid":"12","user":{"screen-name":"OliJackson_512","lang":"en","friends_count":445,"statuses_count":164,"name":"Oli Jackson","followers_count":22649},"sender-location":point("24.82,94.63"),"send-time":datetime("2010-02-13T10:10:00"),"referred-topics":{{"samsung","voice-command"}},"message-text":" like samsung the voice-command is amazing:)"}
diff --git a/asterix-docker/docker/twu.adm b/asterix-docker/docker/twu.adm
new file mode 100644
index 0000000..32a1917
--- /dev/null
+++ b/asterix-docker/docker/twu.adm
@@ -0,0 +1,4 @@
+{"screen-name":"NathanGiesen@211","lang":"en","friends_count":18,"statuses_count":473,"name":"Nathan Giesen","followers_count":49416}
+{"screen-name":"ColineGeyer@63","lang":"en","friends_count":121,"statuses_count":362,"name":"Coline Geyer","followers_count":17159}
+{"screen-name":"NilaMilliron_tw","lang":"en","friends_count":445,"statuses_count":164,"name":"Nila Milliron","followers_count":22649}
+{"screen-name":"ChangEwing_573","lang":"en","friends_count":182,"statuses_count":394,"name":"Chang Ewing","followers_count":32136}
diff --git a/asterix-docker/pom.xml b/asterix-docker/pom.xml
new file mode 100644
index 0000000..6cf4a5e
--- /dev/null
+++ b/asterix-docker/pom.xml
@@ -0,0 +1,63 @@
+<!--
+ ! Licensed to the Apache Software Foundation (ASF) under one
+ ! or more contributor license agreements.  See the NOTICE file
+ ! distributed with this work for additional information
+ ! regarding copyright ownership.  The ASF licenses this file
+ ! to you under the Apache License, Version 2.0 (the
+ ! "License"); you may not use this file except in compliance
+ ! with the License.  You may obtain a copy of the License at
+ !
+ !   http://www.apache.org/licenses/LICENSE-2.0
+ !
+ ! Unless required by applicable law or agreed to in writing,
+ ! software distributed under the License is distributed on an
+ ! "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ ! KIND, either express or implied.  See the License for the
+ ! specific language governing permissions and limitations
+ ! under the License.
+ !-->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <artifactId>asterix</artifactId>
+        <groupId>edu.uci.ics.asterix</groupId>
+        <version>0.8.7-SNAPSHOT</version>
+    </parent>
+    <artifactId>asterix-docker</artifactId>
+    <properties>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    </properties>
+
+  <licenses>
+    <license>
+      <name>Apache License, Version 2.0</name>
+      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+      <distribution>repo</distribution>
+      <comments>A business-friendly OSS license</comments>
+    </license>
+  </licenses>
+
+    <build>
+    <plugins>
+    <plugin>
+      <groupId>com.spotify</groupId>
+      <artifactId>docker-maven-plugin</artifactId>
+      <version>0.2.11</version>
+      <configuration>
+        <imageName>asterixdb/demo</imageName>
+        <dockerDirectory>docker</dockerDirectory>
+        <resources>
+           <resource>
+             <targetPath>/</targetPath>
+             <directory>../asterix-server/target/</directory>
+             <include>asterix-server-${project.version}-binary-assembly.zip</include>
+           </resource>
+        </resources>
+      </configuration>
+    </plugin>
+    </plugins>
+    </build>
+
+
+</project>
