postiz / Dockerfile
trymonolith's picture
Skip native module compilation with --ignore-scripts flag
25bdc61 verified
FROM node:18-alpine
WORKDIR /app
# Install system dependencies
RUN apk add --no-cache git python3 py3-pip bash curl build-base g++ make
# Clone Postiz repository
RUN git clone https://github.com/gitroomhq/postiz-app.git . && git checkout main
# Install npm dependencies with --ignore-scripts to skip native module compilation issues
RUN npm install --legacy-peer-deps --ignore-scripts --no-audit && npm cache clean --force
# Try to build (may fail partially but that's okay for some modules)
RUN npm run build 2>&1 || true
# Create necessary directories
RUN mkdir -p /config /uploads
# Expose port
EXPOSE 5000
# Set environment variables
ENV NODE_ENV=production
ENV APP_PORT=5000
ENV MAIN_URL=http://localhost:5000
ENV FRONTEND_URL=http://localhost:5000
ENV NEXT_PUBLIC_BACKEND_URL=http://localhost:5000/api
ENV JWT_SECRET=your-secret-key-change-in-production
ENV IS_GENERAL=true
ENV STORAGE_PROVIDER=local
ENV UPLOAD_DIRECTORY=/uploads
ENV DATABASE_URL=postgresql://user:password@localhost:5432/postiz
ENV REDIS_URL=redis://localhost:6379
# Start the application
CMD ["npm", "run", "start"]