Da wir mit Docker die folgende Umgebung erstellen konnten, haben wir den Ablauf vom Docker-Image-Build zum JupyterLab-Start zusammengefasst.
Um es zu erhalten, ist eine Kontoanmeldung erforderlich. Bitte installieren Sie auch Docker Desktop. Außerdem habe ich diesmal Python von Docker Official Images verwendet [^ 2]
Speichern Sie Docker-Dateien in einem beliebigen Verzeichnis
Docker-Bild | die Einstellungen |
---|---|
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
Speichern Sie die Docker-Compose-Datei in einem beliebigen Verzeichnis
Elemente einstellen | die Einstellungen |
---|---|
Hostseitiger freigegebener Ordner | /Users/User_Name/Docker/JupyterLab/codes |
Freigegebener Ordner auf der Containerseite | /home/JupyterLab/codes |
JupyterLab-Anmeldekennwort[^3] | --NotebookApp.notebook_dir='/home/JupyterLab/codes' |
JupyterLab-Ausgangsverzeichnis | --NotebookApp.notebook_dir='/home/JupyterLab/codes' |
Name des Docker-Containers | 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
Erstellen Sie das Image mit dem folgenden Befehl
Terminal oder PowerShell
docker-compose build
Überprüfen Sie das Bild
Terminal oder PowerShell
docker images
Es ist in Ordnung, wenn das Bild jupyterlab angezeigt wird
Wenn Sie Jupyter Lab das nächste Mal verwenden, starten Sie es mit dem folgenden Befehl
Terminal oder PowerShell
docker-compose up
Wenn Sie anhalten, drücken Sie Strg + C am Terminal
Greifen Sie auf die folgende URL zu und geben Sie das Kennwort ein, um den Jupyter Lab-Bildschirm anzuzeigen. Der in JupyterLab erstellte Code (z. B. die ipynb-Datei) wird in den freigegebenen Ordner auf der Hostseite ausgegeben, sodass beim Löschen des Containers der erstellte Code nicht gelöscht wird.
[^ 1]: Anstatt eine lange Option mit Docker-Lauf hinzuzufügen, habe ich sie in der Einstellungsdatei (Dockerfile und docker-compose.yml) beschrieben und entwickelt, um sie nur mit ** docker-compose up ** zu starten
[^ 2]: Anfangs dachte ich an "jupyter / datascience-notebook", aber als ich es unter Windows versuchte, trat beim Start von JupyterLab ein Kernelfehler auf, sodass ich einfach ein Nur-Python-Image verwendete.
[^ 3]: Wenn Sie ein Hash-Passwort anstelle von einfachem Text schreiben, ändern Sie "--NotebookApp.token = '○○○'" in "--NotebookApp.password = 'sha1: ○○○'". Bitte austauschen
Recommended Posts