diff --git a/Dockerfile b/Dockerfile index 2fe7848..623ed2c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,26 +1,8 @@ -FROM node:lts-alpine AS base +FROM node:lts-alpine AS build WORKDIR /app +COPY package.json package-lock.json . +RUN npm install --production && \ + npm run build -# By copying only the package.json and package-lock.json here, we ensure that the following `-deps` steps are independent of the source code. -# Therefore, the `-deps` steps will be skipped if only the source code changes. -COPY package.json package-lock.json ./ - -FROM base AS prod-deps -RUN npm install --production - -FROM base AS build-deps -RUN npm install --production=false - -FROM build-deps AS build -COPY . . -RUN npm run build - -FROM base AS runtime -COPY --from=prod-deps /app/node_modules ./node_modules -COPY --from=build /app/dist ./dist - -ENV HOST=0.0.0.0 -ENV PORT=4321 -ENV ASTRO_TELEMETRY_DISABLED=1 -EXPOSE 4321 -CMD node ./dist/server/entry.mjs +FROM nginx:alpine AS serve +COPY --from=build /app/dist /usr/share/nginx/html