1
0
Code Issues Pull Requests Actions Packages Projects Releases Wiki Activity Security Code Quality
Files
cosmos-prototype-application/Dockerfile
2025-07-10 11:14:07 +07:00

33 lines
588 B
Docker

# Stage 1: Build
FROM node:18-slim AS builder
WORKDIR /app
# Copy dependencies first to cache better
COPY package.json package-lock.json ./
RUN npm install
# Copy all source code
COPY . .
# Build the Next.js app
RUN npm run build
# Stage 2: Run production image
FROM node:18-slim
WORKDIR /app
COPY --from=builder /app/package.json /app/package-lock.json ./
RUN npm install --omit=dev
COPY --from=builder /app/.next .next
COPY --from=builder /app/public public
COPY --from=builder /app/next.config.ts ./
COPY --from=builder /app/src src
EXPOSE 3000
CMD ["npx", "next", "start"]