Files
atahan/Dockerfile
Beyhan Oğur 763b147cc3 first commit
2026-04-26 22:04:35 +03:00

41 lines
796 B
Docker

# Build stage
FROM node:20-alpine AS builder
WORKDIR /app
# Install build dependencies for native modules
RUN apk add --no-cache python3 make g++
# Copy package files
COPY package.json yarn.lock ./
# Remove any existing node_modules and reinstall for Alpine Linux
RUN rm -rf node_modules && yarn install --frozen-lockfile
# Copy source code
COPY . .
# Build the application
RUN yarn build
# Production stage
FROM node:20-alpine
WORKDIR /app
# Copy built artifacts from builder stage
COPY --from=builder /app/.output ./.output
COPY --from=builder /app/package.json ./package.json
# Expose the port the app runs on
EXPOSE 3000
# Set environment variables
ENV NUXT_HOST=0.0.0.0
ENV NUXT_PORT=3000
ENV NODE_ENV=production
# Start the application
CMD ["node", ".output/server/index.mjs"]