From 2a1aabd77348a973d5130fada0e11a33dd0a01f7 Mon Sep 17 00:00:00 2001 From: Dessalines Date: Wed, 9 Sep 2020 18:56:02 -0500 Subject: [PATCH] Somewhat working dockerfile, without the networking. --- .dockerignore | 2 ++ Dockerfile | 37 +++++++++++++++++++++++++++++++------ 2 files changed, 33 insertions(+), 6 deletions(-) create mode 100644 .dockerignore diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..f06235c4 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +node_modules +dist diff --git a/Dockerfile b/Dockerfile index 0c40fb96..9337b86d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,33 @@ -FROM node:14 -WORKDIR /usr/src/app_name -COPY . . +FROM node:14-alpine as builder +RUN apk update && apk add yarn curl bash && rm -rf /var/cache/apk/* + +RUN curl -sfL https://install.goreleaser.com/github.com/tj/node-prune.sh | bash -s -- -b /usr/local/bin + +WORKDIR /usr/src/app + +# Cache deps +COPY package.json yarn.lock ./ +RUN yarn install --pure-lockfile + +# Build +COPY generate_translations.js \ + tsconfig.json \ + webpack.config.js \ + .babelrc \ + . +COPY translations translations +COPY src src + RUN yarn -RUN yarn build:server -RUN yarn build:client +RUN yarn build + +# Pruning +# RUN npm prune --production +RUN /usr/local/bin/node-prune + +FROM node:14-alpine as runner +COPY --from=builder /usr/src/app/dist /app/dist +COPY --from=builder /usr/src/app/node_modules /app/node_modules + EXPOSE 1234 -CMD yarn serve +CMD node /app/dist/js/server.js