From: C0ffeeCode Date: Sun, 30 Jan 2022 15:28:38 +0000 (+0100) Subject: Improve Dockerfile (#256) X-Git-Tag: v1.8.0~139 X-Git-Url: https://git.wafflesoft.org/?a=commitdiff_plain;h=1b9216b3415866e77c964c80a90b2ce6b3db48be;p=rainny.git Improve Dockerfile (#256) * Use npm ci over install to achive faster and more expectable build results; Split copy package(-lock).json files and ci then to avoid reinstalling dependencies when not needed => Faster build times * Stopp adding wasm type to mime.types, its already there (duplicate): - avoids warning in console - cleans up - might have been missing in past nginx:alpine versions but now exists * Change node tag from alpine and nginx to more specific ones for #260 --- diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..be0443a --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +node_modules/ +.git/ diff --git a/Dockerfile b/Dockerfile index 3064003..751e1e8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,18 @@ ## Builder -FROM node:14-alpine as builder +FROM node:17.4.0-alpine3.15 as builder WORKDIR /src +COPY package.json package-lock.json /src +RUN npm ci COPY . /src -RUN npm install \ - && npm run build +RUN npm run build ## App -FROM nginx:alpine +FROM nginx:1.21.6-alpine COPY --from=builder /src/dist /app -# Insert wasm type into Nginx mime.types file so they load correctly. -RUN sed -i '3i\ \ \ \ application/wasm wasm\;' /etc/nginx/mime.types - RUN rm -rf /usr/share/nginx/html \ && ln -s /app /usr/share/nginx/html