[DOCKER] Comment créer facilement un environnement où le code Python peut s'exécuter sur Jupyter sans polluer l'environnement local

Aperçu

--Créez un état où ** le code python peut être exécuté ** sans polluer l'environnement local

Installer Docker

https://docs.docker.com/docker-for-mac/install/#download-docker-for-mac

--Cliquez sur Get Docker for mac pour obtenir Docker.dmg

Démarrer le conteneur avec l'image docker d'Anaconda

Terminal de lancement

Téléchargez l'image Docker requise

Obtenez votre image de docker préférée, ici nous utiliserons l'image qui contient anaconda3 https://hub.docker.com/r/continuumio/anaconda3/~/dockerfile/

$ docker pull continuumio/anaconda3
Using default tag: latest
latest: Pulling from continuumio/anaconda3
8ad8b3f87b37: Pull complete 
e8b8d30f7444: Pull complete 
...
Status: Downloaded newer image for continuumio/anaconda3:latest

Créer un répertoire de travail référencé par jupyter notebook

$ mkdir -p $HOME/jupyter-notebook/notebooks

Démarrer le conteneur Docker

$ docker run \
    -d -i -t \
    -p 8888:8888 \
    --name jupyter-notebook \
    -v $HOME/jupyter-notebook/notebooks:/opt/notebooks \
    continuumio/anaconda3 \
    /bin/bash -c "/opt/conda/bin/conda install jupyter -y --quiet && /opt/conda/bin/jupyter notebook --notebook-dir=/opt/notebooks --ip='*' --no-browser --allow-root"

-p 8888: xxxx Si la valeur par défaut de Jupyter Notebook de 8888 ne vous convient pas, remplacez-la par un autre port xxxx.

Vérifiez l'état du conteneur

$ docker ps -a
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                    NAMES
96f9690341ae        continuumio/anaconda3   "/usr/bin/tini -- ..."   6 seconds ago       Up 5 seconds        0.0.0.0:8888->8888/tcp   jupyter-notebook

Ouvrez JupyterNotebook à partir du navigateur

Obtenez l'URL du bloc-notes Jupyter s'exécutant sur le conteneur

Dans le journal obtenu par la commande docker logs, l'URL avec le jeton pour accéder à JupyterNotebook est enregistrée, alors récupérez-la.

$ docker logs jupyter-notebook

Fetching package metadata .........
Solving package specifications: .
...
    
    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        http://localhost:8888/?token=a5b5211197b4d9b2f8f93ee73c085786039486369c5bcbec <<<<---- here

Ouvrez l'URL d'accès dans votre navigateur

Ouvrez l'URL obtenue dans le navigateur (si vous avez changé le port, remplacez-le par le port spécifié)

http://localhost:8888/?token=a5b5211197b4d9b2f8f93ee73c085786039486369c5bcbec
notebook

Ouvert Pas encore de code

Exécution du code

Placez votre code préféré dans votre répertoire de travail Par exemple, git clone référentiel Deep Learning from scratch

$ cd $HOME/jupyter-notebook/notebooks

$ git clone https://github.com/oreilly-japan/deep-learning-from-scratch.git
Cloning into 'deep-learning-from-scratch'...
remote: Counting objects: 322, done.
remote: Total 322 (delta 0), reused 0 (delta 0), pack-reused 322
Receiving objects: 100% (322/322), 4.87 MiB | 944.00 KiB/s, done.
Resolving deltas: 100% (160/160), done.
Checking connectivity... done.

Immédiatement réfléchi sur Jupyter Notebook

JupyterNote からみえます

(Le fichier acquis est un fichier texte, il ne peut donc pas être exécuté tel quel) Créez un fichier exécutable tel que Python3 à partir du menu déroulant Nouveau sur l'écran Jupyter, et coupez et collez le code que vous souhaitez exécuter pour déplacer le code librement.

自由にコードを実行します

c'est tout! : RÉ

Lorsque vous n'avez plus besoin d'un conteneur Docker

Détruisons le conteneur avec docker stop, docker rm :)

$ docker ps -a 
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS              PORTS                    NAMES
96f9690341ae        continuumio/anaconda3   "/usr/bin/tini -- ..."   6 seconds ago       Up 5 seconds        0.0.0.0:8888->8888/tcp   jupyter-notebook

$ docker stop 96f9690341ae
$ docker rm 96f9690341ae

Recommended Posts

Comment créer facilement un environnement où le code Python peut s'exécuter sur Jupyter sans polluer l'environnement local
Comment exécuter Python sous Windows sans polluer autant que possible l'environnement (édition Scoop)
Comment changer facilement l'environnement virtuel créé par Conda sur Jupyter
Créer une portée locale en Python sans polluer l'espace de noms
Comment écrire du code pour accéder à python dashDB sur Bluemix ou local
Comment utiliser Jupyter Notebook sans polluer votre environnement avec Docker
Comment créer un environnement d'exécution Python et Jupyter avec VSCode
Comment toucher Jupyter Notebook sans polluer l'environnement autre que Pythonista, ou comment toucher Ruby avec Jupyter Notebook sans polluer l'environnement autre que Rubyist
Comment créer un environnement NVIDIA Docker
Créer un environnement OpenCV3 + python3 sur OSX
Procédure de création d'un environnement virtuel Python avec VS Code sous Windows
Comment créer un environnement pour utiliser plusieurs versions de Python sur un Mac
[Python] Comment créer un environnement de serveur Web local avec SimpleHTTPServer et CGIHTTPServer
Comment créer un article à partir de la ligne de commande
Réfléchissez à la programmation de Python sur votre iPad
Comment créer un environnement Django (python) sur Docker
Comment mettre Pyenv sur Amazon Linux et Ubuntu pour créer un environnement Python 3.6.0
Comment créer un téléchargeur d'image avec Bottle (Python)
Comment profiter de Python sur Android !! Programmation en déplacement !!
Comment utiliser NUITKA-Utilities hinted-compilation pour créer facilement un fichier exécutable à partir d'un script Python
Comment créer un environnement Python sur Amazon Linux 2
Comment créer un environnement d'exécution virtuelle pour Python à l'aide de Visual Studio Code et de pipenv sur une machine Windows (également le notebook Jupyter)
Comment gérer le phénomène que Python (notebook Jupyter) exécuté sur WSL devient abandonné
Exécutez le programme sans créer d'environnement Python! !! (Comment démarrer avec Google Colaboratory)
Comment gérer la version mineure de Python (créer un environnement virtuel) sous Windows (sans Pyenv ou WSL)
Une note sur la façon de préparer facilement un environnement de pratique Linux
Comment créer un nouvel environnement virtuel Python sur Ubuntu
[Hyperledger Iroha] Remarques sur l'utilisation du SDK Python
Comment utiliser VS Code dans un environnement Venv avec Windows
Comment déployer Pybot, le manuel Python le plus simple, sur Heroku
Code pour envoyer du courrier basé sur la liste de diffusion Excel
Création d'un environnement pour exécuter des programmes Python sur AWS EC2
Comment entrer dans l'environnement de développement Python avec Vagrant
[Python Kivy] Comment créer un fichier exe avec pyinstaller
Comment créer un fichier ISO (image CD) sous Linux
[Django] Mémo pour créer un environnement de Django + MySQL + Vue.js [Python]
Vue d'ensemble de l'environnement virtuel Python et comment le créer
J'ai essayé de créer un environnement dans lequel le travail dans le conteneur Docker sur le serveur distant peut être effectué directement à partir du code VS local avec une connexion SSH
Exécutez le code de sortie sur le serveur Web local en tant que "A, faisant semblant d'être B" en python
Étapes rapides pour créer un environnement d'apprentissage automatique à l'aide de Jupyter Notebook sur macOS Sierra avec anaconda
Tout le monde peut comprendre comment créer un environnement initial pour Python sur Mac Septembre 2016 (pyenv + virutalenv)
Rendre Pandas disponibles dans Jupyter dans les plus brefs délais avec un nouveau Mac sans polluer l'environnement
Concurrence avec VS Code Créez un environnement Python pour les professionnels sous Windows
J'ai essayé de créer un environnement serveur qui fonctionne sous Windows 10
J'ai essayé de créer un environnement de MkDocs sur Amazon Linux
Comment reconstruire l'environnement python à partir de pyenv dans un environnement Mac (El Capitan)
Comment connaître la structure interne d'un objet en Python
Essayez de créer un environnement python avec Visual Studio Code et WSL
Comment créer un environnement Python à l'aide de Virtualenv sur Ubuntu 18.04 LTS
[Python] Explique comment utiliser la fonction format avec un exemple
Comment utiliser Jupyter sur le frontal de Spacon ITO
[Python + heroku] De l'état sans Python à l'affichage de quelque chose avec heroku (Partie 1)
La route pour installer Python et Flask sur un PC hors ligne
[Python + heroku] De l'état sans Python à l'affichage de quelque chose avec heroku (partie 2)
Comment mettre à jour la version Python de Cloud Shell dans GCP
Comment exécuter le code pratique du livre "Making Profitable AI with Python" sur Google Colaboratory