diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..2db3e70b71a2f82fefd81f857997aec5c8fe20fe
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,40 @@
+FROM node
+MAINTAINER Caner Candan <caner@candan.fr>
+
+ENV PGP_KEY_TYPE	default
+ENV PGP_KEY_LENGTH	default
+ENV PGP_SUBKEY_TYPE	default
+ENV PGP_SUBKEY_LENGTH	default
+ENV PGP_REAL_NAME	docker_node
+ENV PGP_COMMENT		it's a docker test node
+ENV PGP_EMAIL		docker@docker
+ENV PGP_EXPIRE_DATE	0
+ENV PGP_PASSPHRASE	abc
+
+ENV CURRENCY_NAME			test
+ENV PORT_NUMBER				8033
+ENV REMOTE_HOST				ucoin-test.xyz
+ENV REMOTE_IPV4				0.0.0.0
+ENV REMOTE_PORT				8033
+ENV AMENDMENTS_DAEMON			ON
+ENV AMENDMENTS_START			1406283438
+ENV AMENDMENTS_FREQUENCY		86400
+ENV UNIVERSAL_DIVIDEND_FREQUENCY	86400
+ENV AMENDMENTS_CONSENSUS		0.67
+ENV FIRST_UNIVERSAL_DIVIDEND_VALUE	100
+ENV MONETARY_MASS_GROWTH_PERCENT	0.0074
+ENV COMMUNITY_CHANGES_ALGORITHM		AnyKey
+
+ENV MONGO_DB_NAME	ucoin_default
+
+COPY share/docker/run.sh /usr/src/app/
+COPY share/docker/setup.sh /usr/src/app/
+
+ADD . /usr/src/app
+WORKDIR /usr/src/app
+
+RUN npm install . -g
+
+EXPOSE 8033
+
+CMD [ "sh", "run.sh" ]
diff --git a/share/docker/run.sh b/share/docker/run.sh
new file mode 100755
index 0000000000000000000000000000000000000000..db17ecfd943c62af2e4c99d5e0c25551602b215f
--- /dev/null
+++ b/share/docker/run.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+echo "Setup first"
+sh setup.sh
+
+echo "Then run..."
+ucoind start \
+    --mhost $MONGO_PORT_27017_TCP_ADDR \
+    --mport $MONGO_PORT_27017_TCP_PORT \
+    --mdb $MONGO_DB_NAME
diff --git a/share/docker/setup.sh b/share/docker/setup.sh
new file mode 100755
index 0000000000000000000000000000000000000000..fd8a2e3fb296376e26b0e1e3ee99ff6b3c81e16d
--- /dev/null
+++ b/share/docker/setup.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+
+echo "(1) Create new pgp secret key thanks to the environment variables provided to docker run cmd"
+
+cat >key <<EOF
+%echo Generating a basic OpenPGP key
+Key-Type: $PGP_KEY_TYPE
+Key-Length: $PGP_KEY_LENGTH
+Subkey-Type: $PGP_SUBKEY_TYPE
+Subkey-Length: $PGP_SUBKEY_LENGTH
+Name-Real: $PGP_REAL_NAME
+Name-Comment: $PGP_COMMENT
+Name-Email: $PGP_EMAIL
+Expire-Date: $PGP_EXPIRE_DATE
+Passphrase: $PGP_PASSPHRASE
+%pubring key.pub
+%secring key.sec
+%commit
+%echo done
+EOF
+
+gpg2 --batch --gen-key key
+
+gpg2 --no-default-keyring --secret-keyring ./key.sec \
+     --keyring ./key.pub --list-secret-keys
+
+gpg2 --no-default-keyring --secret-keyring ./key.sec \
+     --keyring ./key.pub --export-secret-keys -a > ./key.sec.asc
+
+echo "(2) Configure ucoind thanks to the new created pgp secret key and the provided environment variables"
+
+ucoind config \
+    --mhost $MONGO_PORT_27017_TCP_ADDR \
+    --mport $MONGO_PORT_27017_TCP_PORT \
+    --mdb $MONGO_DB_NAME \
+    --currency $CURRENCY_NAME \
+    --port $PORT_NUMBER \
+    --ipv4 `hostname -i` \
+    --remote4 $REMOTE_IPV4 \
+    --remoteh $REMOTE_HOST \
+    --remotep $REMOTE_PORT \
+    --amdaemon $AMENDMENTS_DAEMON \
+    --amstart $AMENDMENTS_START \
+    --amfreq $AMENDMENTS_FREQUENCY \
+    --udfreq $UNIVERSAL_DIVIDEND_FREQUENCY \
+    --consensus $AMENDMENTS_CONSENSUS \
+    --ud0 $FIRST_UNIVERSAL_DIVIDEND_VALUE \
+    --udpercent $MONETARY_MASS_GROWTH_PERCENT \
+    --algorithm $COMMUNITY_CHANGES_ALGORITHM \
+    --pgpkey ./key.sec.asc --pgppasswd $PGP_PASSPHRASE
+
+echo "Setup done"