diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..e23523e --- /dev/null +++ b/.dockerignore @@ -0,0 +1,47 @@ +# Git related files +.git + +# compiled output +dist +tmp +out-tsc +# Only exists if Bazel was run +bazel-out + +# dependencies +node_modules + +# profiling files +chrome-profiler-events*.json +speed-measure-plugin*.json + +# IDEs and editors +.idea +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace + +# IDE - VSCode +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +.history/* + +# misc +.sass-cache +connect.lock +coverage +libpeerconnection.log +npm-debug.log +yarn-error.log +testem.log +typings + +# System Files +.DS_Store +Thumbs.db \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..92b8d6a --- /dev/null +++ b/Dockerfile @@ -0,0 +1,17 @@ +# Stage 1: Build +FROM node:alpine AS build +WORKDIR /build + +## Install app dependencies +COPY package*.json ./ +RUN npm install + +## Bundle app source +COPY . . + +## Compile App +RUN npm run build + +# Stage 2: Package up with the webserver +FROM nginx:alpine AS final +COPY --from=build /build/dist/frontend /usr/share/nginx/html \ No newline at end of file