Depuis que nous avons pu créer l'environnement suivant avec Docker, nous avons résumé le flux de la création d'image Docker au démarrage de JupyterLab.
--Facile à changer de version de Python (Python3 ⇄ Python2) --Facile à démarrer JupyterLab [^ 1]
La connexion au compte est requise pour l'obtenir. Veuillez également installer Docker Desktop. De plus, cette fois, j'ai utilisé python de Docker Official Images [^ 2]
Stockez les fichiers Docker dans n'importe quel répertoire
Image Docker | Réglages |
---|---|
Python3 | python:3 |
Python2 | python:2 |
Dockerfile
FROM python:3
WORKDIR /usr/src/app
RUN pip install --upgrade pip
RUN pip install numpy scipy matplotlib ipython scikit-learn pandas pillow mglearn
RUN pip install jupyterlab
RUN jupyter serverextension enable --py jupyterlab
docker-compose.yml
Stocker le fichier docker-compose dans n'importe quel répertoire
Éléments de réglage | Réglages |
---|---|
Dossier partagé côté hôte | /Users/User_Name/Docker/JupyterLab/codes |
Dossier partagé côté conteneur | /home/JupyterLab/codes |
Mot de passe de connexion JupyterLab[^3] | --NotebookApp.notebook_dir='/home/JupyterLab/codes' |
Répertoire de base de JupyterLab | --NotebookApp.notebook_dir='/home/JupyterLab/codes' |
Nom du conteneur Docker | jupyterlab |
docker-compose.yml
version: '3'
services:
jupyterlab:
container_name: 'jupyterlab'
image: jupyterlab
build:
context: .
dockerfile: "Dockerfile"
user: root
volumes:
- jupyterlab-dir:/home/JupyterLab/codes
ports:
- "8888:8888"
environment:
TZ: Asia/Tokyo
command: jupyter lab --ip=0.0.0.0 --allow-root --no-browser --NotebookApp.notebook_dir='/home/JupyterLab/codes' --NotebookApp.token='○○○'
volumes:
jupyterlab-dir:
driver_opts:
type: none
device: /Users/MacLover/Docker/JupyterLab/codes
o: bind
Construisez l'image avec la commande suivante
Terminal ou PowerShell
docker-compose build
Vérifiez l'image
Terminal ou PowerShell
docker images
Ce n'est pas grave si l'image jupyterlab est affichée
La prochaine fois que vous utiliserez Jupyter Lab, démarrez-le avec la commande suivante
Terminal ou PowerShell
docker-compose up
Lors de l'arrêt, ctrl + c sur le terminal
Accédez à l'URL suivante et entrez le mot de passe pour afficher l'écran Jupyter Lab. Le code créé sur JupyterLab (tel que le fichier ipynb) est sorti dans le dossier partagé côté hôte, donc la suppression du conteneur ne supprime pas le code créé.
[^ 1]: Au lieu d'ajouter une option longue avec docker run, je l'ai décrite dans le fichier de configuration (Dockerfile et docker-compose.yml) et ai conçu pour le démarrer uniquement avec ** docker-compose up **
[^ 2]: Au départ, je pensais à "jupyter / datascience-notebook", mais quand je l'ai essayé sous Windows, une erreur de noyau s'est produite au démarrage de JupyterLab, alors j'ai simplement utilisé une image uniquement Python.
[^ 3]: lors de l'écriture d'un mot de passe haché au lieu de texte brut, remplacez "--NotebookApp.token = '○○○'" par "--NotebookApp.password = 'sha1: ○○○'" S'il vous plaît changer
Recommended Posts