Bluesky app fork with some witchin' additions 馃挮
at main 1.2 kB view raw
1FROM node:20.11-alpine3.18 as build 2 3# Move files into the image and install 4WORKDIR /app 5 6COPY ./bskyogcard/package.json ./ 7COPY ./bskyogcard/yarn.lock ./ 8RUN yarn install --frozen-lockfile 9 10COPY ./bskyogcard ./ 11 12# build then prune dev deps 13RUN yarn install-fonts && yarn build 14RUN yarn install --production --ignore-scripts --prefer-offline 15 16# Uses assets from build stage to reduce build size 17FROM node:20.11-alpine3.18 18 19RUN apk add --update dumb-init 20 21# Avoid zombie processes, handle signal forwarding 22ENTRYPOINT ["dumb-init", "--"] 23 24WORKDIR /app 25COPY --from=build /app /app 26RUN mkdir /app/data && chown node /app/data 27 28VOLUME /app/data 29EXPOSE 3000 3001 30ENV CARD_PORT=3000 31ENV CARD_METRICS_PORT=3001 32ENV NODE_ENV=production 33# potential perf issues w/ io_uring on this version of node 34ENV UV_USE_IO_URING=0 35 36# https://github.com/nodejs/docker-node/blob/master/docs/BestPractices.md#non-root-user 37USER node 38CMD ["node", "--heapsnapshot-signal=SIGUSR2", "--enable-source-maps", "dist/bin.js"] 39 40LABEL org.opencontainers.image.source=https://github.com/bluesky-social/social-app 41LABEL org.opencontainers.image.description="Bsky Card Service" 42LABEL org.opencontainers.image.licenses=UNLICENSED