diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..7b59c154 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,30 @@ +FROM ubuntu:trusty + +# Base system +RUN apt-get update -q + +# Base build dependencies. +RUN apt-get install -qy golang nodejs build-essential git mercurial automake autoconf + +# Add and build Spreed WebRTC server. +ADD . /srv/spreed-webrtc +WORKDIR /srv/spreed-webrtc +RUN ./autogen.sh +RUN ./configure +RUN make pristine && make + +# Create default config file. +RUN cp -v /srv/spreed-webrtc/server.conf.in /srv/spreed-webrtc/server.conf +RUN sed -i 's|listen = 127.0.0.1:8080|listen = 0.0.0.0:8080|' /srv/spreed-webrtc/server.conf +RUN sed -i 's|sessionSecret = .*|sessionSecret = `openssl rand -hex 32`|' /srv/spreed-webrtc/server.conf +RUN sed -i 's|encryptionSecret = .*|encryptionSecret = `openssl rand -hex 16`|' /srv/spreed-webrtc/server.conf +RUN sed -i 's|;root = .*|root = /srv/spreed-webrtc|' /srv/spreed-webrtc/server.conf + +# Allow to mount. +VOLUME /srv/spreed-webrtc + +# Tell about our service. +EXPOSE 8080 + +# Define entry point. +ENTRYPOINT ["/srv/spreed-webrtc/spreed-webrtc-server", "-c /srv/spreed-webrtc/server.conf"] \ No newline at end of file