File size: 1,607 Bytes
a7438ba 225dc8e b98d409 225dc8e f618b3b b98d409 f618b3b a7438ba 225dc8e f618b3b 9990a6c 6917f0f a695455 9990a6c 6917f0f 9990a6c 6917f0f 9990a6c 6917f0f 9990a6c 225dc8e 6263425 0465d18 f618b3b 225dc8e 7866e2d 225dc8e 6263425 aa67972 318c2a2 aa67972 318c2a2 a7438ba a695455 a7438ba f618b3b 9990a6c |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
FROM python:3.9-slim
# Install necessary system dependencies and gnupg
RUN apt-get update && apt-get install -y \
libgl1-mesa-glx \
libglib2.0-0 \
wget \
unzip \
curl \
ca-certificates \
gnupg \
fonts-liberation \
libnss3 \
libxss1 \
libappindicator1 \
libgbm-dev \
libgtk-3-0 \
chromium \
&& rm -rf /var/lib/apt/lists/*
# Install Google Chrome
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
RUN sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
RUN apt-get -y update
RUN apt-get install -y google-chrome-stable
# Install ChromeDriver
RUN apt-get install -yqq unzip
RUN wget -O /tmp/chromedriver.zip http://chromedriver.storage.googleapis.com/`curl -sS chromedriver.storage.googleapis.com/LATEST_RELEASE`/chromedriver_linux64.zip
RUN unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/
# Set display port to avoid crash
ENV DISPLAY=:99
# Install Selenium
RUN pip install selenium==3.8.0
WORKDIR /code
RUN mkdir -p /code/uploads && chmod 755 /code/uploads
# Copy and install Python dependencies
COPY ./requirements.txt /code/requirements.txt
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
COPY . /code
# Add and use a non-root user
RUN useradd -ms /bin/sh myuser
RUN chown -R myuser:myuser /code
USER myuser
# Set environment variables for Chrome
ENV CHROME_BIN=/usr/bin/chromium
ENV CHROME_DRIVER=/usr/local/bin/chromedriver
# Default command to run the application
CMD ["python", "app.py"] |