internal-freight-app/Dockerfile

40 lines
No EOL
1,004 B
Docker
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ---------------------------------------------------------
# Build stage
# ---------------------------------------------------------
FROM node:18-alpine AS builder
# Install git (needed by some npm postinstall scripts)
RUN apk add --no-cache git
WORKDIR /app
# Install dependencies (uses package-lock if present, otherwise npm install)
COPY package.json package-lock.json* ./
RUN npm install
# Copy source files
COPY . .
# Build the Vite production bundle
ENV NODE_ENV=production
RUN npm run build
# ---------------------------------------------------------
# Production stage tiny static server
# ---------------------------------------------------------
FROM nginx:alpine
# Remove default nginx config
RUN rm /etc/nginx/conf.d/default.conf
# Copy custom config
COPY nginx.conf /etc/nginx/conf.d
# Copy built assets
COPY --from=builder /app/dist /usr/share/nginx/html
# Expose port (Coolify expects 80 by default)
EXPOSE 80
# Start nginx in foreground
CMD ["nginx", "-g", "daemon off;"]