Auf der PyCon 2015 ist das iPython (Jupyter) Notebook für verschiedene Personen unverzichtbar! Also dachte ich, ich würde es vorerst installieren, aber ich hatte nicht genug japanische Informationen, um Jupyter Saba mit Docker auszuprobieren, also werde ich die Arbeitsaufzeichnung teilen.
Seit Debian 8 (Jassie) ist das Mutterschiff
$ sudo apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
bash:/etc/apt/sources.list.d/docker.list
# Debian Jessie
deb https://apt.dockerproject.org/repo debian-jessie main
$ sudo apt-get update
$ sudo apt-get install docker-engine
$ sudo usermod -a -G docker yi01
Hier gibt es einige Fallen.
Erstens ist es auf dem Docker Hub
Es gibt keine Implementierung für die Authentifizierung, daher müssen Sie "jupyterhub_config.py" erstellen und die Authentifizierungsmethode usw. mit der Option "-v" von Docker definieren.
Es ist jedoch mühsam, verschiedene Dinge von Grund auf neu zu erstellen, daher werde ich Beispiel mit OAuth von GitHub verwenden, das von jupyter erstellt wurde.
$ git clone https://github.com/jupyter/oauthenticator.git
$ cd oauthenticator
Bearbeiten Sie nun die Benutzerliste gemäß der README-Datei.
GitHub-Benutzereinstellungen
diff --git a/example/addusers.sh b/example/addusers.sh
index eb2d86b..cedd272 100644
--- a/example/addusers.sh
+++ b/example/addusers.sh
@@ -7,6 +7,6 @@ for line in `cat userlist`; do
user=`echo $line | cut -f 1 -d' '`
echo "adding user $user"
useradd -m -s /bin/bash $user
- cp -r /srv/ipython/examples /home/$user/examples
- chown -R $user /home/$user/examples
+# cp -r /srv/ipython/examples /home/$user/examples
+# chown -R $user /home/$user/examples
done
diff --git a/example/userlist b/example/userlist
index e69de29..d8f3556 100644
--- a/example/userlist
+++ b/example/userlist
@@ -0,0 +1 @@
+YusukeIwaki admin
Als Einschränkung können Sie, wenn Sie nur die Benutzerliste bearbeiten, "Docker Build" verwenden
cp: cannot stat ‘/srv/ipython/examples’: No such file or directory
chown: cannot access ‘/home/YusukeIwaki/examples’: No such file or directory
Ich bekomme einen Fehler wie diesen und es wird Moos, also werde ich das Shell-Skript ein wenig bearbeiten. Nach der Bearbeitung
$ cd example
$ docker build -t jupyter/oauthenticator .
Wenn Sie also ein erfolgreiches Protokoll erhalten,
Bestätigung
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
jupyter/oauthenticator latest 209358b449b6 24 seconds ago 934.9 MB
jupyter/jupyterhub latest fd5445f17a96 5 days ago 934.8 MB
Unter GitHub-Einstellungsbildschirm
Stellen Sie so ein. Bitte ändern Sie den Hostnamen und die Portnummer des Rückrufs entsprechend. Geben Sie nach der Registrierung der OAuth-Anmeldeinformationen auf der GitHub-Site die Client-ID und das dort erhaltene Geheimnis ein.
Geheimnis
diff --git a/example/env b/example/env
index 9f32b5c..7a921da 100644
--- a/example/env
+++ b/example/env
@@ -1,5 +1,5 @@
# add your github oauth config to this file,
# and run the container with `docker run -it -p 9000:8000 --env-file=env jupyter/oauthenticator`
-GITHUB_CLIENT_ID=
-GITHUB_CLIENT_SECRET=
-OAUTH_CALLBACK_URL=
+GITHUB_CLIENT_ID=21d***********e7a3
+GITHUB_CLIENT_SECRET=2ea1f***********************e9da7
+OAUTH_CALLBACK_URL=http://localhost:8001/hub/oauth_callback
Stellen Sie es so ein.
$ docker run -it -p 8001:8000 --env-file=env jupyter/oauthenticator
Wenn Sie also über einen Browser darauf zugreifen ...
Kita━━━━ (゜ ∀ ゜) ━━━━ !!
Recommended Posts