marriott-notify / Dockerfile
lucianotonet's picture
Upload 3 files
34f9450 verified
raw
history blame
1.23 kB
# Use a imagem base do Python
FROM python:3.9
# Instalar o Chrome e suas dependências
RUN apt-get update && apt-get install -y \
wget \
gnupg \
unzip \
&& wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | apt-key add - \
&& sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list' \
&& apt-get update && apt-get install -y \
google-chrome-stable
# Instalar o ChromeDriver
RUN wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.com/114.0.5735.90/chromedriver_linux64.zip \
&& unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/ \
&& rm /tmp/chromedriver.zip
# Criar um usuário não root
RUN useradd -m -u 1000 user
# Definir o diretório de trabalho
WORKDIR /app
# Copiar o arquivo de requisitos
COPY --chown=user ./requirements.txt requirements.txt
# Instalar as dependências do Python
RUN pip install --no-cache-dir --upgrade -r requirements.txt
# Copiar o código da aplicação
COPY --chown=user . /app
# Definir o usuário para executar o container
USER user
# Comando para iniciar a aplicação
CMD ["python", "app.py"]