diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..faf23bd1 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +.dart_tool +.idea +.pub +.vscode +logs/ +test/ +build/ +.analysis-options +.packages +*.g.dart \ No newline at end of file diff --git a/.gitignore b/.gitignore index 101449fc..2e6f7e0f 100644 --- a/.gitignore +++ b/.gitignore @@ -86,3 +86,4 @@ fabric.properties !.vscode/extensions.json logs/ +*.pem diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..e19083f5 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,31 @@ +FROM ubuntu:14.04 +MAINTAINER Tobe O + +# Install Dart SDK 1.21 +RUN sudo apt-get update +RUN sudo apt-get install apt-transport-https +RUN sudo sh -c 'curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -' +RUN sudo sh -c 'curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list' +RUN sudo apt-get update +RUN sudo apt-get install dart=1.21.* +RUN export PATH="/usr/lib/dart/bin:$PATH" + +# Copy necessary files +ADD bin/ bin/ +ADD config/ config/ +ADD lib/ lib/ +ADD tool/ tool/ +ADD views/ view/ +ADD web/ web/ +ADD pubspec.lock pubspec.lock +ADD pubspec.yaml pubspec.yaml + +# Install dependencies, pre-build +RUN pub get +RUN dart tool/build.dart +RUN pub build + +# Set environment, start multi-server :) +ENV ANGEL_ENV=production +EXPOSE 80 +RUN dart bin/multi_server.dart \ No newline at end of file