[PYTHON] Créez un conteneur Docker et enregistrez le png depuis altair

J'ai pris beaucoup de temps d'essais et d'erreurs, je vais donc télécharger les résultats seul. Lorsque j'ai installé la dernière version de «chromedriver-binary», la version principale était plus grande que «google-chrome-stable» et une erreur s'est produite. Il semble que vous puissiez utiliser autre chose que "stable" du côté Chrome, mais j'ai décidé de faire correspondre "chromedriver-binary" avec Chrome.

Dockerfile


FROM python

#Installation de Chrome
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add && \
    echo 'deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main' | tee /etc/apt/sources.list.d/google-chrome.list && \
    apt update && apt install -y google-chrome-stable

WORKDIR /python
COPY requirements.txt .
# chromedriver-Faire correspondre la version principale du binaire à Chrome
#     google-chrome --version: "Google Chrome 0.0.0.0"Renvoie une chaîne comme
#     grep --only-matching:    (Dans chaque ligne)Renvoie toutes les pièces correspondantes dans l'ordre
#     head -n 1:Obtenez uniquement la version majeure
#     sed --in-place:Je ne sais pas
RUN sed -e s/chromedriver-binary/chromedriver-binary==`google-chrome --version | grep -o -E "[0-9]*" | head -n 1`.*/ -i requirements.txt

RUN pip install --upgrade pip && pip install -r requirements.txt

requirements.txt


altair
altair_saver
chromedriver-binary
jupyter
matplotlib
numpy
pandas
scipy==1.5
selenium

Le titre doit être lié à «altair», «altair_saver», «chromedriver-binary», «sélénium».

main.py


import altair
import chromedriver_binary              #PATH est passé par import;Non utilisé comme module
altair.renderers.enable('altair_saver') #Le document officiel avait un argument pour spécifier le format, mais je l'ai supprimé parce que j'étais en colère
altair.Chart(...).....save('plot.png')  #Réussi

Recommended Posts

Créez un conteneur Docker et enregistrez le png depuis altair
Transportez un conteneur Docker
Flutter dans Docker - Comment créer et utiliser un environnement de développement Flutter dans un conteneur Docker
Créer un environnement Docker qui peut utiliser PyTorch et JupyterLab
[Django] Créez rapidement un environnement de développement de conteneur Django (Docker) avec PyCharm
Créer un environnement go à l'aide de Docker
Créer un fichier deb avec Docker
Exécutez Matplotlib sur un conteneur Docker
Comment supprimer un conteneur Docker
Obtenez les conditions de simulation OCTA à partir d'un fichier et enregistrez avec les pandas
[DynamoDB] [Docker] Créer un environnement de développement pour DynamoDB et Django avec docker-compose
Créez un environnement CentOS Linux 8 avec Docker et démarrez Apache HTTP Server
Comment diviser et enregistrer un DataFrame
[Linux] Créer un environnement Jenkins avec Docker
Exécutez matplotlib sur un conteneur Windows Docker
[Linux] Construction de l'environnement Docker avec Amazon Linux 2
Construisez un environnement Python + bouteille + MySQL avec Docker sur RaspberryPi3! [Essai et erreur]
Comment exécuter une application Django sur un conteneur Docker (environnement de développement et de production)
Créez un environnement LAMP sur votre Docker local
Créer un environnement de développement de langage C avec un conteneur
Installez l'image docker mongodb et connectez-vous à partir de spring-boot
[Python] Créer un environnement de développement Django avec Docker
Utilisez l'API Kaggle dans un conteneur Docker
Créez un environnement virtuel avec pyenv et venv
Trier les données Fashion-MNIST et les enregistrer au format PNG
Essayez le mode interactif Python dans un conteneur Docker
Créer un environnement d'apprentissage automatique Python avec des conteneurs
[Django] Créez rapidement un environnement de développement de conteneur Django (Docker) à l'aide de VS Code + Remote Containers