From 50e691cf053db65c7309413067005a14b224ca69 Mon Sep 17 00:00:00 2001 From: mifi Date: Fri, 26 May 2023 09:35:56 -0400 Subject: [PATCH] Why do I suck at Dockerfiles? --- Dockerfile | 29 +++++++++++++++-------------- package.json | 2 +- 2 files changed, 16 insertions(+), 15 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3806dec..413ec56 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,22 +1,23 @@ ARG ENV=production -ARG PORT=9001 +ARG MONGO_ENTRY_FILE +ARG MONGO_VERSION=latest ARG NPM_TOKEN +ARG PORT=9001 ARG YARN_VERSION=3.5.0 -ARG MONGO_ENTRY_FILE=${MONGO_VERSION:-latest} -ARG MONGO_VERSION=${MONGO_VERSION:-latest} ## mongo build stage -FROM mongo:$MONGO_VERSION AS database -ENV NODE_ENV $ENV -ENV MONGO_ENTRY_FILE $MONGO_ENTRY_FILE -ENV MONGO_VERSION $MONGO_VERSION -COPY docker-entrypoint-initdb.d/mongo-init-$MONGO_ENTRY_FILE.sh ./docker-entrypoint-initdb.d/mongo-init.sh +FROM mongo:${MONGO_VERSION} AS database +ENV NODE_ENV=${ENV} +ARG MONGO_ENTRY_FILE=${MONGO_ENTRY_FILE:-latest} +ENV MONGO_VERSION=${MONGO_VERSION} +RUN echo ${MONGO_ENTRY_FILE} ${MONGO_VERSION} ${NODE_ENV} +COPY docker-entrypoint-initdb.d/mongo-init-${MONGO_ENTRY_FILE}.sh ./docker-entrypoint-initdb.d/mongo-init.sh ## stage one, build the service FROM node:20-bullseye-slim AS build -ENV YARN_VERSION $YARN_VERSION -ENV NODE_ENV development -ENV NPM_TOKEN $NPM_TOKEN +ENV YARN_VERSION=${YARN_VERSION} +ENV NODE_ENV=development +ENV NPM_TOKEN=${NPM_TOKEN} WORKDIR /home/node/app COPY .npmrc /root COPY .build.yarnrc.yml /root/.yarnrc.yml @@ -26,9 +27,9 @@ RUN yarn build:production ## this is stage two , where the app actually runs FROM node:20-bullseye-slim AS containerize -ENV YARN_VERSION $YARN_VERSION -ENV NODE_ENV $ENV -ENV NPM_TOKEN $NPM_TOKEN +ENV YARN_VERSION=${YARN_VERSION} +ENV NODE_ENV=${ENV} +ENV NPM_TOKEN=${NPM_TOKEN} WORKDIR /home/node/app COPY .npmrc /root COPY .build.yarnrc.yml /root/.yarnrc.yml diff --git a/package.json b/package.json index 09ec6af..bef7eb8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@mifi/auth-service", - "version": "1.0.10", + "version": "1.0.11", "author": "mifi (Mike Fitzpatrick)", "license": "MIT", "scripts": {