Files
traceability/Dockerfile
2026-01-25 14:43:14 +01:00

33 lines
530 B
Docker

# Build stage
FROM node:20-alpine AS builder
WORKDIR /app
# Copy package files
COPY package*.json ./
COPY bun.lockb ./
# Install dependencies
RUN npm install
# Copy source code
COPY . .
# Build the application
RUN npm run build
# Production stage - Using Caddy
FROM caddy:2-alpine AS production
# Copy built assets from builder stage
COPY --from=builder /app/dist /srv
# Copy Caddyfile
COPY Caddyfile /etc/caddy/Caddyfile
# Expose port 80
EXPOSE 80
# Start Caddy
CMD ["caddy", "run", "--config", "/etc/caddy/Caddyfile"]