mirror of
https://github.com/alam00000/bentopdf.git
synced 2026-01-04 12:08:28 -05:00
53 lines
1.2 KiB
Docker
53 lines
1.2 KiB
Docker
# Build stage
|
|
FROM node:20-alpine AS builder
|
|
WORKDIR /app
|
|
COPY package*.json ./
|
|
RUN npm ci
|
|
COPY . .
|
|
|
|
# Build without type checking (vite build only)
|
|
# Pass SIMPLE_MODE environment variable if provided
|
|
ARG SIMPLE_MODE=false
|
|
ENV SIMPLE_MODE=$SIMPLE_MODE
|
|
RUN npm run build -- --mode production
|
|
|
|
# Production stage
|
|
FROM nginxinc/nginx-unprivileged:stable-alpine-slim
|
|
|
|
LABEL org.opencontainers.image.source="https://github.com/alam00000/bentopdf"
|
|
|
|
COPY --chown=nginx:nginx --from=builder /app/dist /usr/share/nginx/html
|
|
COPY --chown=nginx:nginx nginx.conf /etc/nginx/nginx.conf
|
|
RUN mkdir -p /etc/nginx/tmp && chown -R nginx:nginx /etc/nginx/tmp
|
|
|
|
EXPOSE 8080
|
|
CMD ["nginx", "-g", "daemon off;"]
|
|
|
|
|
|
# Old Dockerfile for Root User
|
|
# # Build stage
|
|
# FROM node:20-alpine AS builder
|
|
|
|
# WORKDIR /app
|
|
|
|
# COPY package*.json ./
|
|
# RUN npm ci
|
|
|
|
# COPY . .
|
|
|
|
# # Build without type checking (vite build only)
|
|
# # Pass SIMPLE_MODE environment variable if provided
|
|
# ARG SIMPLE_MODE=false
|
|
# ENV SIMPLE_MODE=$SIMPLE_MODE
|
|
# RUN npm run build -- --mode production
|
|
|
|
# # Production stage
|
|
# FROM nginx:alpine
|
|
|
|
# COPY --from=builder /app/dist /usr/share/nginx/html
|
|
# COPY nginx.conf /etc/nginx/nginx.conf
|
|
|
|
# EXPOSE 8080
|
|
|
|
# CMD ["nginx", "-g", "daemon off;"]
|