-
Douglas Lagemann authoredDouglas Lagemann authored
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Dockerfile 812 B
# Party Bus-specific Dockerfile
# It omits `npm ci` per Party Bus rules.
# STAGE 1: set up builder with everything
FROM registry1.dso.mil/ironbank/opensource/nodejs/nodejs20:20.11 AS builder
WORKDIR /home/node
COPY --chown=node:node . .
# Stage 2: copy over only what is needed for production and set up start conditions
FROM registry1.dso.mil/ironbank/opensource/nodejs/nodejs20:20.11
WORKDIR /home/node
COPY --from=builder --chown=node:node /home/node/node_modules ./node_modules
COPY --from=builder --chown=node:node /home/node/src ./src
COPY --from=builder --chown=node:node /home/node/rds-ca-bundle-us-gov-west-1.cer ./rds-ca-bundle-us-gov-west-1.cer
RUN npm prune --omit=dev
ENV DB_CA_PATH="/home/node/rds-ca-bundle-us-gov-west-1.cer"
USER node
EXPOSE 8000
CMD [ "bash", "-c", "node src/server.js" ]