refactor: Switch to new language
This commit is contained in:
47
Dockerfile
47
Dockerfile
@@ -1,47 +0,0 @@
|
||||
# Typescript Build
|
||||
FROM registry.odit.services/hub/library/node:19.0.1-alpine3.16 AS build
|
||||
ARG NPM_REGISTRY_URL=https://registry.npmjs.org
|
||||
WORKDIR /app
|
||||
|
||||
COPY package.json ./
|
||||
RUN npm config set registry $NPM_REGISTRY_URL && npm i -g pnpm@8
|
||||
RUN mkdir /pnpm && pnpm config set store-dir /pnpm && pnpm i
|
||||
|
||||
COPY tsconfig.json ./
|
||||
COPY src ./src
|
||||
RUN pnpm build \
|
||||
&& rm -rf /app/node_modules \
|
||||
&& pnpm i --production --frozen-lockfile
|
||||
|
||||
# final image
|
||||
FROM registry.odit.services/hub/library/alpine:3.16
|
||||
WORKDIR /app
|
||||
RUN apk add --no-cache \
|
||||
chromium \
|
||||
nss \
|
||||
freetype \
|
||||
freetype-dev \
|
||||
harfbuzz \
|
||||
ca-certificates \
|
||||
ttf-freefont \
|
||||
nodejs \
|
||||
font-noto-emoji \
|
||||
&& apk add wqy-zenhei --update-cache --repository https://nl.alpinelinux.org/alpine/edge/testing
|
||||
|
||||
# Tell Puppeteer to skip installing Chrome. We'll be using the installed package.
|
||||
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true \
|
||||
PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
|
||||
|
||||
RUN addgroup -S pptruser && adduser -S -g pptruser pptruser \
|
||||
&& mkdir -p /home/pptruser/Downloads /app \
|
||||
&& chown -R pptruser:pptruser /home/pptruser \
|
||||
&& chown -R pptruser:pptruser /app
|
||||
|
||||
# Run everything after as non-privileged user.
|
||||
USER pptruser
|
||||
|
||||
COPY --from=build /app/package.json /app/
|
||||
COPY --from=build /app/node_modules /app/node_modules
|
||||
COPY --from=build /app/dist app
|
||||
COPY ./src/static app/static
|
||||
ENTRYPOINT ["node", "app/app.js"]
|
||||
Reference in New Issue
Block a user