Deux Conteneurs Docker et d'Azur de Déploiement

0

La question

Je souhaite déployer Azur python scripts utilisent le Sélénium bibliothèque pour faire quelques tests automatisés à l'encontre de différents sites internet à certaines heures de la journée.

Je veux utiliser Docker avec Azure.

Ma pensée est que je dois développer un menu fixe composer script:

  • déployer une Sélénium autonome chrome image à l'écoute sur le port 4444.
  • déployer un autre récipient avec Python image et d'avoir mes scripts Python dans il fonctionne avec CRON
  • parce que j'ai 2 conteneurs qui ne connaissent pas les uns les autres, je pense que je dois exécuter un panneau de commande pour configurer un réseau, de sorte que ces 2 conteneurs peuvent parler les uns aux autres. Est-ce à aller dans le menu fixe-composer script?

Comme vous pouvez le dire, je suis un peu nouveau à tout cela est de ma pensée droite ou ai-je fait-il trop compliqué?

cron docker python selenium
2021-11-17 20:43:30
1

La meilleure réponse

1

Je pense que tout cela pourrait être fait dans un seul conteneur. Je pense que les deux façons sont réalisables, mais vous êtes en droit de penser que la composition du fichier aura besoin de la définition du réseau.

À titre d'exemple:

FROM python:3.8

COPY . /app
WORKDIR /app

RUN mkdir __logger

# 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

RUN pip install --upgrade pip

RUN pip install -r requirements.txt

CMD ["python", "./app.py"]

Exemple de source

2021-11-17 20:50:50

Donc ce n'est pas à l'aide d'une Sélénium image perse - vous êtes en train d'installer Chrome dans l'environnement puis de l'exécution des scripts python à partir de là (qui, évidemment, que le Sélénium déclarations d'importation, etc)
Vidar

Correct. C'est juste de l'autre option que vous auriez si vous voulez exécuter l'ensemble dans un seul conteneur. Les deux options sont possibles, et l'option réseau pourrait fournir une séparation des préoccupations. Je suppose que c'est en fin de compte jusqu'à la résilience des processus dont vous avez besoin à la fin; C'ces sons seront sur un calendrier de toute façon, si cela peut faire sens pour des raisons de simplicité.
pypalms

Dans d'autres langues

Cette page est dans d'autres langues

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................