2025-04-23 02:02:37 +00:00
|
|
|
# Etapa 1 - Build
|
|
|
|
|
FROM node:20-alpine AS builder
|
2025-04-22 16:50:16 +00:00
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
COPY package*.json ./
|
2025-04-23 02:02:37 +00:00
|
|
|
RUN npm install
|
2025-04-22 16:50:16 +00:00
|
|
|
|
|
|
|
|
COPY . .
|
|
|
|
|
|
2025-04-23 02:02:37 +00:00
|
|
|
# Gera a aplicação Angular + SSR
|
|
|
|
|
RUN npm run build
|
|
|
|
|
|
|
|
|
|
# Etapa 2 - Runtime
|
|
|
|
|
FROM node:20-alpine
|
|
|
|
|
|
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
|
|
# Copia apenas os arquivos necessários para rodar SSR
|
|
|
|
|
COPY --from=builder /app/dist /app/dist
|
|
|
|
|
COPY --from=builder /app/node_modules /app/node_modules
|
|
|
|
|
COPY --from=builder /app/package*.json /app/
|
|
|
|
|
|
|
|
|
|
# Expor a porta do servidor SSR
|
|
|
|
|
EXPOSE 4000
|
2025-04-22 16:50:16 +00:00
|
|
|
|
2025-04-23 02:02:37 +00:00
|
|
|
# Rodar o server SSR compilado
|
|
|
|
|
CMD ["node", "dist/my-task-board-angular/server/server.mjs"]
|