| # Use official Node.js LTS base image |
| FROM node:18-slim |
|
|
| # Set working |
| WORKDIR /app |
|
|
| # Install Chrome/ |
| RUN |
| wget |
| gnupg |
| ca-certificates |
| && wget ///linux/ | |
| && echo /etc//sources.list.d/ |
| && apt-get |
| && apt-get |
| google-chrome-stable |
| fonts-liberation |
| libasound2 |
| libatk1.0-0 \ |
| libatk-bridge2.0-0 \ |
| libc6 |
| libcairo2 |
| libcups2 |
| libdbus-1-3 \ |
| libexpat1 |
| libfontconfig1 |
| libgbm1 |
| libgcc1 |
| libglib2.0-0 \ |
| libgtk-3-0 \ |
| libnss3 |
| libnspr4 |
| libpango-1.0-0 \ |
| libx11-6 \ |
| libx11-xcb1 |
| libxcb1 |
| libxcomposite1 |
| libxcursor1 |
| libxdamage1 |
| libxext6 |
| libxfixes3 |
| libxi6 |
| libxrandr2 |
| libxrender1 |
| libxss1 |
| libxtst6 |
| xdg-utils |
| && rm /var//apt//* |
|
|
| # Create package.json |
| COPY package*.json ./ |
|
|
| # Install |
| RUN |
|
|
| # Copy |
| COPY |
|
|
| # Create |
| RUN |
| && mkdir /home//Downloads \ |
| && chown -R pptruser:pptruser //pptruser \ |
| && chown -R pptruser:pptruser / |
|
|
| # Set |
| ENV |
| ENV /usr//google-chrome-stable |
|
|
| # Expose port |
| EXPOSE 7860 |
|
|
| # Switch to non-root user |
| USER pptruser |
|
|
| # Start the application |
| CMD [, ] |