diff --git a/Dockerfile b/Dockerfile index fdcd2aa..663e165 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,28 +1,20 @@ -FROM node:22-alpine AS build +# ---- Base Node ---- +FROM node:22-alpine AS base -WORKDIR /app +RUN mkdir -p /app -COPY package*.json ./ -RUN npm ci +WORKDIR /app COPY . . -RUN npm run build:prod \ - && npm prune --omit=dev - -FROM node:22-alpine - -WORKDIR /app - -ENV NODE_ENV=production +RUN chown -R node:node /app -COPY --from=build /app/package*.json ./ -COPY --from=build /app/node_modules ./node_modules -COPY --from=build /app/build ./build +USER node -RUN addgroup -S app && adduser -S app -G app && chown -R app:app /app -USER app +RUN npm i -EXPOSE 3700 +RUN npm run build:prod -CMD ["node", "build/src/index.js"] +# Expose the listening port of your app +EXPOSE 3000 +CMD [ "npm", "start" ] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 4f02365..293c7da 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,9 +2,9 @@ version: '3.8' services: playchoo-auth: - build: . - env_file: - - .env + image: "${DOCKER_IMAGE}" + pull_policy: always + container_name: "${REVERSE_DOMAIN}" environment: NODE_ENV: ${NODE_ENV:-production} APP_PORT: ${APP_PORT:-3700}