diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..65da15df0a16cd8f33eadab9ab21adf78306f032
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,49 @@
+# multi stage dockerfile
+# it defines three different images
+# 1. mumble-web
+# 2. mumble-web with nginx
+# 3. websockfiy as web socket
+
+
+# mumble-web base image
+FROM alpine:edge AS mumble-web
+LABEL maintainer="Armin Co <armin.co@hs-bochum.de"
+# copy mumble-web repository into docker image
+COPY ./mumble-web /home/node
+# install deps for building mumble web
+RUN apk add --no-cache \
+        git \
+        nodejs \
+        npm \
+        && \
+    adduser -D -g 1001 -u 1001 -h /home/node node && \
+    mkdir -p /home/node && \
+    mkdir -p /home/node/.npm-global && \
+    mkdir -p /home/node/app  && \
+    chown -R node: /home/node 
+USER node
+ENV PATH=/home/node/.npm-global/bin:$PATH
+ENV NPM_CONFIG_PREFIX=/home/node/.npm-global
+# build mumble-web
+RUN cd /home/node   && \
+    npm install     && \
+    npm run build   && \
+    npm audit fix   && \
+    npm audit
+
+
+# add nginx as webserver to mumble web
+FROM nginx:alpine AS mumble-web-nginx
+USER root
+COPY --from=mumble-web /home/node/dist /home/node/dist
+RUN apk add --no-cache nginx && \
+    adduser -D -g 'www' www && \
+    mkdir /data
+EXPOSE 443
+
+
+# websockify
+FROM alpine:edge AS websockify
+RUN echo http://nl.alpinelinux.org/alpine/edge/testing >> /etc/apk/repositories && \
+    apk add --no-cache websockify 
+EXPOSE 64737
diff --git a/Dockerfile.mumble-web b/Dockerfile.mumble-web
deleted file mode 100644
index cc57a6933af87cc49f9cb4f309dd51c84c6cfd0e..0000000000000000000000000000000000000000
--- a/Dockerfile.mumble-web
+++ /dev/null
@@ -1,30 +0,0 @@
-FROM nginx:alpine
-
-LABEL maintainer="Armin Co <armin.co@hs-bochum.de"
-
-# copy mumble-web repository into docker image
-COPY ./mumble-web /home/node
-
-RUN apk add --no-cache \
-        git \
-        nodejs \
-        npm \
-        && \
-    adduser -D -g 1001 -u 1001 -h /home/node node && \
-    mkdir -p /home/node && \
-    mkdir -p /home/node/.npm-global && \
-    mkdir -p /home/node/app  && \
-    chown -R node: /home/node 
-
-USER node
-
-ENV PATH=/home/node/.npm-global/bin:$PATH
-ENV NPM_CONFIG_PREFIX=/home/node/.npm-global
-
-# "install" mumble-web
-RUN cd /home/node   && \
-    npm install     && \
-    npm run build   && \
-    npm audit fix   && \
-    npm audit
-
diff --git a/webserver/Dockerfile.nginx b/webserver/Dockerfile.nginx
deleted file mode 100644
index 2ee8df8ba536861701e6f36c6fc63fa637a43c44..0000000000000000000000000000000000000000
--- a/webserver/Dockerfile.nginx
+++ /dev/null
@@ -1,15 +0,0 @@
-FROM build_mumble_web_image
-
-USER root
-
-RUN apk add --no-cache bash nginx && \
-    adduser -D -g 'www' www && \
-    mkdir /config
-
-EXPOSE 443
-COPY webserver/entrypoint.sh /
-COPY webserver/ /config
-
-
-RUN chmod +x /entrypoint.sh
-CMD /bin/bash ./entrypoint.sh
\ No newline at end of file