[PYTHON] Construire un environnement d'analyse avec Docker (jupyter notebook + PostgreSQL)

Dans cet article

--Construction d'un environnement d'analyse de données à l'aide de Docker --Vérifier la connexion entre python et postgresql avec docker-compose

Fait

À propos de l'image

Pour postgresql, nous utilisons l'image officielle de Docker. L'environnement anaconda crée un Dockerfile basé sur votre propre image.

FROM kyobad/anaconda3-alpine

MAINTAINER K.Kato

RUN conda install -y seaborn psycopg2 networkx\
&& pip install chainer

WORKDIR /root/notebook

CMD ["/bin/sh", "-c", "jupyter notebook --no-browser --port=8888 --ip=0.0.0.0"]

Il s'agit d'une image d'installation d'un environnement d'analyse tel que seaborn et psycopg2 basé sur l'environnement anaconda.

À propos des fichiers de composition

Créez un fichier de configuration docker-compose pour connecter cet environnement python à postgresql.

docker-compose.yml


version: '2'
services:
    db:
        image:
            postgres
        restart:
            always
        environment:
            POSTGRES_USER:
                pythonist
            POSTGRES_PASSWORD:
                password
            POSTGRES_DB:
                mypyenv
        ports:
            - "5432"
        container_name:
            postgres-db
        volumes:
            - ./postgres-db:/var/lib/postgresql/data
            - ./docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d
    python:
        build: .
        volumes:
            - ./workdir:/root/notebook/
        ports:
            - "8888:8888"
        links:
            - db
        depends_on:
            - db

Le nom d'utilisateur, le mot de passe, etc. sont définis dans l'environnement de db. Veuillez les modifier le cas échéant. Le postgres-db / set en volume monte les données postgres localement et les sauvegarde (est-il vraiment souhaitable de créer un conteneur dataonly?) docker-entrypoint-initdb.d est le paramètre par défaut au démarrage du conteneur. Si vous placez des fichiers SQL tels que la création de table ici, ils seront effectués au démarrage du conteneur. Le volume de python est un montage pour enregistrer localement le notebook démarré.

méthode de départ

Dans le répertoire où vous mettez ces

docker-compose up

En exécutant la commande, le conteneur postgres et le conteneur de notebook jupyter seront lancés.

Depuis votre navigateur, vous pouvez accéder à localhost: 8888 et accéder à la base de données avec le nom et le mot de passe de la base de données écrits dans le fichier de composition.

スクリーンショット 2016-12-26 14.36.13.png

Conclusion

Recommended Posts

Construire un environnement d'analyse avec Docker (jupyter notebook + PostgreSQL)
Construction d'environnement virtuel avec Docker + Flask (Python) + notebook Jupyter
Construction de l'environnement de contrôle à distance Pepper-kun avec Docker + IPython Notebook
Construction d'un environnement Jupyter facile avec Cloud9
[MEMO] [Construction de l'environnement de développement] Jupyter Notebook
Créer un environnement Jupyter Lab (Python) avec Docker
Comment utiliser Jupyter Notebook sans polluer votre environnement avec Docker
Construction de l'environnement: GCP + Docker
Je voulais utiliser le notebook jupyter avec docker dans l'environnement pip (opticspy)
Essayez d'utiliser l'environnement virtuel conda avec Jupyter Notebook
Modèle de construction d'environnement de développement local Python [Flask / Django / Jupyter avec Docker + VS Code]
Création d'un environnement R avec Jupyter (anciennement notebook IPython) (sous OS X El Capitan 10.11.3)
[Python] Construction de l'environnement OpenCV avec Docker (cv2.imshow () fonctionne également)
De Kafka à KSQL - Construction d'environnement facile avec docker
Construction d'un environnement d'analyse de données avec Python (notebook IPython + Pandas)
Approvisionnement EC2 avec Vagrant + Jupyter (IPython Notebook) sur Docker
Utilisation de Graphviz avec Jupyter Notebook
Utiliser pip avec Jupyter Notebook
Construction de l'environnement Docker + Django + React
Utiliser Cython avec Jupyter Notebook
Préparer l'environnement python3 avec Docker
Jouer avec Jupyter Notebook (IPython Notebook)
Changer d'environnement virtuel avec jupyter
notebook jupyter dans l'environnement venv python3.8
Préparez facilement un environnement Jupyter Notebook avec Docker (Tensorflow et Graphviz sont également disponibles)
Créez un environnement de développement Django avec Docker! (Docker-compose / Django / postgreSQL / nginx)
Apprentissage automatique à l'aide de Jupyter Notebook dans l'environnement OCI Always Free (2019/12/17)
Refléter l'environnement virtuel créé par Miniconda dans le notebook Jupyter
De la construction de l'environnement au déploiement pour flask + Heroku avec Docker
Je souhaite utiliser un environnement virtuel avec jupyter notebook!
Autoriser les connexions externes avec le notebook Jupyter
Formatage avec autopep8 sur le notebook Jupyter
Commencez avec Python! ~ ① Construction de l'environnement ~
Jusqu'à ce que vous démarriez Jupyter dans Docker
Construction de l'environnement Ruby avec AWS EC2
Visualisez l'arbre de décision avec le notebook Jupyter
Faites un son avec le notebook Jupyter
Construire un environnement Mysql + Python avec docker
Utiliser Markdown avec le notebook Jupyter (avec raccourci)
[Linux] Construction de l'environnement Docker sur Redhat
Ajouter plus de noyaux avec Jupyter Notebook
Créer un environnement de notebook IPython avec boot2docker
Analyse pratique avec Pandas + notebook Jupyter
Automatisez la construction d'environnement avec ShellScript
Construction de l'environnement Python3 avec pyenv-virtualenv (CentOS 7.3)
Utilisation de Chainer avec CentOS7 [Construction de l'environnement]
Construction de l'environnement pytorch @ python3.8 avec pipenv
Reconstruisez l'environnement de développement de Django avec Docker! !! !! !!
[docker] Construction de l'environnement python3.5 + numpy + matplotlib
Créer un environnement avec pyenv et pyenv-virtualenv
Créez un environnement d'expérimentation / d'analyse psychologique confortable avec PsychoPy + Jupyter Notebook
Construction d'environnement Postgres avec Docker J'ai eu un peu de mal, alors notez
Créez un environnement d'apprentissage automatique arbitraire avec GCP + Docker + Jupyter Lab
[Ubuntu 18.04] Créer un environnement Python avec pyenv + pipenv
Utiliser nbextensions avec le notebook Jupyter d'Anaconda