docker: slim docker image to 154Mb (#5248)
* Better dockerfile * nits * proper VOLUMES
This commit is contained in:
34
Dockerfile
34
Dockerfile
@@ -1,21 +1,31 @@
|
||||
FROM node:carbon
|
||||
# Build stage
|
||||
FROM node:lts-alpine as build
|
||||
|
||||
RUN mkdir -p /parse-server
|
||||
COPY ./ /parse-server/
|
||||
RUN apk update; \
|
||||
apk add git;
|
||||
WORKDIR /tmp
|
||||
COPY package*.json ./
|
||||
RUN npm ci
|
||||
COPY . .
|
||||
RUN npm run build
|
||||
|
||||
RUN mkdir -p /parse-server/config
|
||||
VOLUME /parse-server/config
|
||||
|
||||
RUN mkdir -p /parse-server/cloud
|
||||
VOLUME /parse-server/cloud
|
||||
# Release stage
|
||||
FROM node:lts-alpine as release
|
||||
VOLUME /parse-server/cloud /parse-server/config
|
||||
|
||||
WORKDIR /parse-server
|
||||
|
||||
RUN npm install && \
|
||||
npm run build
|
||||
COPY package*.json ./
|
||||
RUN npm ci --production
|
||||
|
||||
COPY bin bin
|
||||
COPY public_html public_html
|
||||
COPY views views
|
||||
COPY --from=build /tmp/lib lib
|
||||
RUN mkdir -p logs && chown -R node: logs
|
||||
|
||||
ENV PORT=1337
|
||||
|
||||
USER node
|
||||
EXPOSE $PORT
|
||||
|
||||
ENTRYPOINT ["npm", "start", "--"]
|
||||
ENTRYPOINT ["node", "./bin/parse-server"]
|
||||
|
||||
Reference in New Issue
Block a user