From 6fc693d11d1c40c077ea66898287fbefa3f0fd38 Mon Sep 17 00:00:00 2001 From: Sammy Teillet Date: Tue, 26 Sep 2023 15:59:36 +0200 Subject: [PATCH] feature: try dockerfile without user restrictions --- Dockerfile | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/Dockerfile b/Dockerfile index f0f56a5..72fb6ae 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,39 +1,36 @@ # syntax=docker/dockerfile:1 FROM --platform=linux/amd64 node:18.15.0-alpine as builder RUN apk add --update --no-cache openssl -USER node WORKDIR /tmp/build/app -COPY --chown=node:node package.json ./ -COPY --chown=node:node yarn.lock ./ +COPY package.json ./ +COPY yarn.lock ./ RUN yarn install -COPY --chown=node:node prisma ./prisma/ +COPY prisma ./prisma/ RUN yarn prisma generate -COPY --chown=node:node tsconfig.json ./ -COPY --chown=node:node tsconfig.build.json ./ -COPY --chown=node:node src ./src +COPY tsconfig.json ./ +COPY tsconfig.build.json ./ +COPY src ./src RUN yarn build FROM --platform=linux/amd64 node:18.15.0-alpine as ts-node-module-prod RUN apk add --update --no-cache openssl -USER node WORKDIR /usr/src/app -COPY --chown=node:node --from=builder /tmp/build/app/package.json ./ -COPY --chown=node:node --from=builder /tmp/build/app/yarn.lock ./ +COPY --from=builder /tmp/build/app/package.json ./ +COPY --from=builder /tmp/build/app/yarn.lock ./ RUN yarn install --frozen-lockfile --production -COPY --chown=node:node --from=builder /tmp/build/app/node_modules/@prisma ./node_modules/@prisma -COPY --chown=node:node --from=builder /tmp/build/app/node_modules/.prisma ./node_modules/.prisma +COPY --from=builder /tmp/build/app/node_modules/@prisma ./node_modules/@prisma +COPY --from=builder /tmp/build/app/node_modules/.prisma ./node_modules/.prisma FROM --platform=linux/amd64 node:18.15.0-alpine RUN apk add --update --no-cache openssl -USER node WORKDIR /usr/src/app -COPY --chown=node:node --from=builder /tmp/build/app/package.json ./ -COPY --chown=node:node --from=ts-node-module-prod /usr/src/app/node_modules ./node_modules -COPY --chown=node:node --from=builder /tmp/build/app/prisma ./prisma +COPY --from=builder /tmp/build/app/package.json ./ +COPY --from=ts-node-module-prod /usr/src/app/node_modules ./node_modules +COPY --from=builder /tmp/build/app/prisma ./prisma -COPY --chown=node:node --from=builder /tmp/build/app/dist ./ +COPY --from=builder /tmp/build/app/dist ./ EXPOSE 3000 CMD ["main.js"]