2022-11-18 23:04:31 +02:00
|
|
|
# Use the alpine image of node 16
|
|
|
|
FROM node:16-alpine
|
2021-05-25 23:17:08 +03:00
|
|
|
|
2022-11-18 23:04:31 +02:00
|
|
|
# Create a dir for the app and make it owned by a non-root user (node)
|
|
|
|
RUN mkdir /tickets && \
|
|
|
|
chown -R 1000:1000 /tickets
|
|
|
|
WORKDIR /tickets
|
2021-05-25 23:17:08 +03:00
|
|
|
|
2022-11-18 23:04:31 +02:00
|
|
|
# Change user to node
|
|
|
|
USER node
|
2021-05-25 23:17:08 +03:00
|
|
|
|
2022-11-18 23:04:31 +02:00
|
|
|
# Install packages
|
|
|
|
COPY --chown=1000:1000 package.json pnpm-lock.yaml ./
|
|
|
|
RUN npx pnpm install --prod --frozen-lockfile
|
|
|
|
|
|
|
|
# Copy src folder
|
|
|
|
COPY src ./src
|
|
|
|
|
|
|
|
# Set the command
|
|
|
|
CMD ["node", "src/"]
|