From eee57c47f5ba6ef995886823826bdcb8b3cf458f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E3=81=8B=E3=81=B2=E3=82=8F=E3=81=974=EF=BC=88=E3=83=90?=
 =?UTF-8?q?=E3=83=BC=E3=82=B8=E3=83=A7=E3=83=B31=EF=BC=89?=
 <khws4v1@gmail.com>
Date: Tue, 30 Oct 2018 21:18:03 +0900
Subject: [PATCH] Use cache when default.yml update (#3042)

* Use cache when default.yml update

* Install latest npm in base image
---
 Dockerfile | 21 +++++++++++++--------
 1 file changed, 13 insertions(+), 8 deletions(-)

diff --git a/Dockerfile b/Dockerfile
index e31af0099b..77cedb6aea 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -3,8 +3,9 @@ FROM alpine:3.8 AS base
 ENV NODE_ENV=production
 
 RUN apk add --no-cache nodejs nodejs-npm zlib
+RUN npm i -g npm@latest
+
 WORKDIR /misskey
-COPY . ./
 
 FROM base AS builder
 
@@ -21,19 +22,23 @@ RUN apk add --no-cache \
     pkgconfig \
     libtool \
     zlib-dev
-RUN npm i -g npm@latest \
- && npm i \
- && npm i -g node-gyp \
- && node-gyp configure \
+RUN npm i -g node-gyp
+
+COPY ./package.json ./
+RUN npm i
+
+COPY . ./
+RUN node-gyp configure \
  && node-gyp build \
  && npm run build
 
 FROM base AS runner
 
-COPY --from=builder /misskey/built ./built
-COPY --from=builder /misskey/node_modules ./node_modules
-
 RUN apk add --no-cache tini
 ENTRYPOINT ["/sbin/tini", "--"]
 
+COPY --from=builder /misskey/node_modules ./node_modules
+COPY --from=builder /misskey/built ./built
+COPY . ./
+
 CMD ["npm", "start"]