| FROM node:18-alpine | |
| WORKDIR /app | |
| # Copy package definition | |
| COPY package.json . | |
| # Install dependencies | |
| RUN npm install | |
| # Copy source code | |
| COPY src ./src | |
| # Create directory for data volume | |
| RUN mkdir -p /app/data | |
| # Environment variables | |
| ENV PORT=3000 | |
| ENV APP_PASSWORD=parox | |
| # Expose default port | |
| EXPOSE 3000 | |
| # Environment variables | |
| ENV PORT=3000 | |
| ENV APP_PASSWORD=parox | |
| # Fix permissions for non-root user (User 1000 is default in many environments + HF) | |
| RUN chown -R node:node /app | |
| # Switch to non-root user | |
| USER node | |
| CMD ["node", "src/server.js"] | |