Updating dockerfile to ensure that chromium is part of app image

This commit is contained in:
Collin Duncan 2023-02-13 08:25:58 +01:00
parent 2eafe06d32
commit c0a8e61187
No known key found for this signature in database

View file

@ -1,11 +1,10 @@
FROM node:18 as builder FROM node:18 as builder
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true
ENV PUPPETEER_EXECUTABLE_PATH /usr/bin/chromium ENV PUPPETEER_EXECUTABLE_PATH /usr/bin/chromium
WORKDIR /app WORKDIR /app
RUN apt-get update && apt-get install -y gcc chromium fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-kacst fonts-freefont-ttf libxss1 --no-install-recommends
RUN npm i -g node-gyp
RUN chown -R node:node . RUN chown -R node:node .
USER node USER node
@ -23,19 +22,23 @@ FROM node:18 as dependencies
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true
ENV PUPPETEER_EXECUTABLE_PATH /usr/bin/chromium ENV PUPPETEER_EXECUTABLE_PATH /usr/bin/chromium
RUN apt-get update && apt-get install -y gcc chromium fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-kacst fonts-freefont-ttf libxss1 --no-install-recommends
RUN npm i -g node-gyp
WORKDIR /app WORKDIR /app
RUN chown -R node:node .
COPY --chown=node:node package.json package.json COPY --chown=node:node package.json package.json
COPY --chown=node:node package-lock.json package-lock.json COPY --chown=node:node package-lock.json package-lock.json
USER node
RUN CXX=g++-12 npm install --omit=dev RUN CXX=g++-12 npm install --omit=dev
FROM node:18 as app FROM dependencies as app
LABEL org.opencontainers.image.source https://github.com/cgduncan7/autobaan LABEL org.opencontainers.image.source https://github.com/cgduncan7/autobaan
WORKDIR /app
COPY --from=builder /app/dist ./dist COPY --from=builder /app/dist ./dist
COPY --from=dependencies /app/node_modules ./node_modules
EXPOSE 3000 EXPOSE 3000
ENTRYPOINT node dist/server/index.js ENTRYPOINT node dist/server/index.js