- Install chromium in Alpine Dockerfile - Add PUPPETEER_EXECUTABLE_PATH env var support - Fallback to system Chrome paths if bundled Chrome not found Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
35 lines
708 B
Docker
35 lines
708 B
Docker
FROM node:20-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# Kopírovanie package súborov
|
|
COPY package*.json ./
|
|
|
|
# Inštalácia závislostí (len produkčné)
|
|
RUN npm ci --only=production
|
|
|
|
# Inštalácia Chromium pre generovanie PDF certifikátov
|
|
RUN apk add --no-cache chromium
|
|
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
|
|
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
|
|
|
|
# Kopírovanie zdrojového kódu
|
|
COPY src ./src
|
|
COPY drizzle.config.js ./
|
|
|
|
# Vytvorenie adresára pre uploady
|
|
RUN mkdir -p uploads
|
|
|
|
# Nastavenie používateľa (bezpečnosť)
|
|
RUN addgroup -g 1001 -S nodejs && \
|
|
adduser -S nodejs -u 1001 && \
|
|
chown -R nodejs:nodejs /app
|
|
|
|
USER nodejs
|
|
|
|
# Port
|
|
EXPOSE 5000
|
|
|
|
# Spustenie
|
|
CMD ["node", "src/index.js"]
|