glb-studio / Dockerfile
GLB Studio Deploy
fix: 2-stage Dockerfile (npm build on HF), remove dist/ from repo
fd7b9b7
FROM node:20-alpine AS builder
WORKDIR /app
COPY package.json ./
RUN npm install --legacy-peer-deps
COPY . .
RUN npm run build
FROM nginx:1.25-alpine
RUN addgroup -g 1000 appgroup && adduser -u 1000 -G appgroup -s /bin/sh -D appuser
RUN rm -rf /usr/share/nginx/html/*
COPY --from=builder /app/dist /usr/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf
RUN mkdir -p /var/cache/nginx/client_temp /var/cache/nginx/proxy_temp \
/var/cache/nginx/fastcgi_temp /var/cache/nginx/uwsgi_temp \
/var/cache/nginx/scgi_temp && \
touch /var/run/nginx.pid && \
chown -R appuser:appgroup /var/cache/nginx /var/run/nginx.pid \
/var/log/nginx /usr/share/nginx/html /etc/nginx/conf.d
USER appuser
EXPOSE 7860
CMD ["nginx", "-g", "daemon off;"]