2023-02-09 21:51:12 +00:00
|
|
|
FROM node:18-bullseye-slim as builder
|
2022-12-02 10:55:56 +00:00
|
|
|
LABEL maintainer="Darren Clarke <darren@redaranj.com>"
|
|
|
|
|
ARG APP_DIR=/opt/link
|
|
|
|
|
RUN mkdir -p ${APP_DIR}/
|
|
|
|
|
COPY . ${APP_DIR}/
|
|
|
|
|
RUN chown -R node ${APP_DIR}/
|
|
|
|
|
USER node
|
|
|
|
|
WORKDIR ${APP_DIR}
|
|
|
|
|
RUN npm install
|
|
|
|
|
RUN npm run build
|
|
|
|
|
|
2023-02-09 21:51:12 +00:00
|
|
|
FROM node:18-bullseye-slim
|
2022-12-02 10:55:56 +00:00
|
|
|
ARG BUILD_DATE
|
|
|
|
|
ARG VERSION
|
|
|
|
|
LABEL maintainer="Darren Clarke <darren@redaranj.com>"
|
|
|
|
|
LABEL org.label-schema.build-date=$BUILD_DATE
|
|
|
|
|
LABEL org.label-schema.version=$VERSION
|
|
|
|
|
ARG APP_DIR=/opt/link
|
|
|
|
|
ENV APP_DIR ${APP_DIR}
|
|
|
|
|
|
|
|
|
|
RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
|
|
|
|
|
apt-get install -y --no-install-recommends \
|
|
|
|
|
dumb-init
|
|
|
|
|
RUN mkdir -p ${APP_DIR}
|
|
|
|
|
RUN chown -R node ${APP_DIR}/
|
|
|
|
|
COPY docker-entrypoint.sh /docker-entrypoint.sh
|
|
|
|
|
RUN chmod +x /docker-entrypoint.sh
|
|
|
|
|
USER node
|
|
|
|
|
WORKDIR ${APP_DIR}
|
|
|
|
|
COPY --from=builder ${APP_DIR}/node_modules ./node_modules
|
|
|
|
|
COPY --from=builder ${APP_DIR}/.next ./.next
|
|
|
|
|
COPY --from=builder ${APP_DIR}/next.config.js ./next.config.js
|
|
|
|
|
EXPOSE 3000
|
|
|
|
|
ENV PORT 3000
|
|
|
|
|
ENV NODE_ENV production
|
|
|
|
|
COPY package.json ./
|
|
|
|
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|