――Ich möchte mit ** Docker ** eine Datenanalyseumgebung erstellen. -Ich möchte ** Python **, ** R ** oder ** Julia ** mit ** Jupyter ** verwenden. ――Ich möchte, dass Sie von Anfang an einige Standardbibliotheken und -pakete für jede Sprache hinzufügen.
Wenn Sie eine Person wie die oben genannte sind und den Befehl gemäß diesem Artikel eingeben, möchten wir eine Datenanalyseumgebung erstellen.
Derzeit haben wir den Start unter macOS High Sierra und Ubuntu 18.04 bestätigt.
Wenn Docker selbst nicht installiert ist, können Sie die folgenden Vorgänge nicht ausführen. Installieren Sie zunächst Docker selbst gemäß dem Betriebssystem von der offiziellen Docker-Website.
Docker verfügt über ein Docker-Image, das voller Anwendungen ist. Sie müssen das gewünschte Docker-Image entsprechend der Art der Umgebung auswählen, die Sie erstellen möchten.
Dieses Mal möchte ich "Jupyter Notebook" verwenden, daher verwende ich das Docker-Image, das auf Jupyter Official Github veröffentlicht wurde.
Der Jupyter-Beamte veröffentlicht verschiedene Arten von Docker-Bildern. Diesmal,
Ich möchte mit allen eine Umgebung erstellen, daher verwende ich etwas, das als "Datascience-Notebook" bezeichnet wird. Weitere Informationen zu diesem Docker-Bild finden Sie auf der offiziellen Jupyter-Website.
Andere vom Jupyter-Beamten veröffentlichte Docker-Bilder und ihre Eigenschaften sind anhand der folgenden Tabelle leicht zu verstehen.
Nachdem das zu verwendende Image festgelegt wurde, laden Sie zuerst das Docker-Image mit `` `Docker Pull``` auf Local herunter.
$ docker pull jupyter/datascience-notebook
docker pull
Rückseite,docker run jupyter/datascience-notebook
Der Container startet immer noch, aber es gibt die folgenden Probleme.
Wenn Sie die Daten nicht beibehalten, wird es später schwierig. Es gibt jedoch viele Fälle, in denen ein Kennwort nicht erforderlich ist, wenn Sie nur mit Local arbeiten, sodass Sie es durchlesen können.
Für Passworteinstellungen
Ich werde es zuerst schreiben, weil ich das Verfahren übernehmen werde. Wenn Sie kein Passwort benötigen, lesen Sie bitte dieses Kapitel.
Geben Sie zunächst mit dem folgenden Befehl die `` `bash```-Umgebung des Docker-Containers ein.
$ docker run -it --rm jupyter/datascience-notebook /bin/bash
Wenn Sie sicher in die `` `bash```-Umgebung des Containers eintreten, wechselt die Ausgabe zu der folgenden.
jovyan@Alphabet:~$
Wenn die Ausgabe umgeschaltet wird, verwenden Sie Python im Docker-Container, um die Hash-Zeichenfolge des Kennworts abzurufen, das Sie verwenden möchten. Mit dem folgenden Befehl werden Sie aufgefordert, Ihr Kennwort zu hashen.
(Im Docker-Container) $ python -c 'from notebook.auth import passwd;print(passwd())'
Wenn Sie den Befehl eingeben, werden Sie aufgefordert, das Kennwort einzugeben, das Sie verwenden möchten. Geben Sie es daher zweimal ein.
(Im Docker-Container) $ python -c 'from notebook.auth import passwd;print(passwd())'
Enter password:
Verify password:
sha1:YOUR_PASSWORD_HASH_VALUE
Beachten Sie, dass das `` `sha1: YOUR_PASSWORD_HASH_VALUE``` (YOUR_PASSWORD_HASH_VALUE hängt von der Umgebung ab), das nach zweimaliger Eingabe des Passworts ausgegeben wird, später verwendet wird.
Sobald Sie die Hash-Zeichenfolge erhalten haben, befinden Sie sich wieder in der lokalen Umgebung, da Sie nicht in diesem Container arbeiten müssen. Da ich beim Starten des Docker-Containers die Option `` `--rm``` gesetzt habe, wird dieser Container automatisch gelöscht, wenn der Docker-Container gestoppt wird.
(Im Docker-Container) $ exit
Sobald Sie die Hash-Zeichenfolge des Kennworts haben, das Sie verwenden möchten, ist es Zeit, den Docker-Container zur Analyse zu starten. Sie können Kennwörter festlegen und Dateien beibehalten, indem Sie beim Starten des Docker-Containers zusätzliche Optionen übergeben.
Wie bereits erwähnt, gibt es kein Problem mit dem Kennwort, auch wenn es nicht von der Umgebung abhängt. Beachten Sie jedoch, dass alles, was Sie im Container getan haben, verschwindet, wenn Sie die Dateien nicht beibehalten.
Starten Sie den Docker-Container der Datenanalyseumgebung mit dem folgenden Befehl.
$ docker run \
--user root \
-e GRANT_SUDO=yes \
-e NB_UID=$UID \
-e NB_GID=$GID \
-e TZ=Asia/Tokyo \
-p 8888:8888 \
--name notebook \
-v ~/path/to/directory/:/home/jovyan/work \
jupyter/datascience-notebook \
start-notebook.sh \
--NotebookApp.password='sha1:YOUR_PASSWORD_HASH_VALUE'
Um die Optionen zu erklären
-v ~/path/to/directory/:/home/jovyan/work/
Auf diese Weise wird das Arbeitsverzeichnis und darunter, das vom Jupyter-Notizbuch angezeigt wird, mit dem lokalen Verzeichnis synchronisiert.
~/path/to/directory/
Ist der Teil, der das Verzeichnis festlegt, in dem Dateien mit dem Docker-Container ausgetauscht werden können. Verwenden Sie daher bitte ein beliebiges Verzeichnis, z. B. das Arbeitsverzeichnis jeder Person.
--NotebookApp.password='sha1:YOUR_PASSWORD_HASH_VALUE'
YOUR_PASSWORD_HASH_Geben Sie für VALUE die zuvor generierte Hash-Zeichenfolge ein.
Wenn Sie den obigen Befehl eingeben und kein Fehler ausgegeben wird, sollte Jupyter erfolgreich gestartet werden.
Lassen Sie uns mit einem Browser darauf zugreifen und es überprüfen.
In den meisten Fällen finden Sie es unter http: // localhost: 8888.
Ersetzen Sie beim Erstellen einer Serverumgebung localhost durch die IP-Adresse des Zielservers.
In der Serverumgebung gibt es Fälle, in denen der Zugriff nicht möglich ist, weil der Port des Servers selbst geschlossen ist.
Öffnen Sie in diesem Fall den von Jupyter Notebook verwendeten Port.
Das Bild unten ist das Bild, als es erfolgreich gestartet wurde.
Wenn Sie eine Seite wie diese sehen, können Sie sich mit dem zuvor festgelegten Kennwort anmelden.
![ss_2017-06-30_17.11.51.png](https://qiita-image-store.s3.amazonaws.com/0/43351/c99a80ea-9f4e-5c71-5cc8-3dafa9ae187c.png)
Danach genießen Sie die Jupyter-Umgebung in Ihrer Lieblingssprache!
Let's enjoy data science!