Schreiben Sie eine Docker-Datei, um jupyter-lab auf Ubuntu zu starten

Einführung

Ich habe einen Docker-Kurs bei udemy besucht, daher werde ich einen Teil davon als Memorandum zusammenfassen. Dieses Mal möchte ich den Code schreiben, um jupyter-lab basierend auf Ubuntu in der Docker-Datei zu starten und den Container tatsächlich zu erstellen.

Beschrieben in Dockerfile

dockerfile



# FROM =>Wählen Sie ein Basisbild aus
FROM ubuntu:latest

# RUN =>Rufen Sie einen Befehl auf
# apt-Upgrade erhalten und installieren Sie die erforderlichen Pakete
RUN apt-get update
RUN apt-get install -y \
    wget \ 
    vim

# WORKDIR =>Erstellen und verschieben Sie ein beliebiges Verzeichnis direkt unter dem Stamm auf der Containerseite
WORKDIR /opt

#Installieren Sie anaconda3 und löschen Sie die ursprüngliche ausführbare Datei
# wget =>Laden Sie die Datei herunter, indem Sie die URL angeben
# sh =>Führen Sie ein Shell-Skript aus
# -b =>Vermeiden Sie interaktive Operationen
#  -p =>Geben Sie das Installationsziel an
#  rm =>Löschen Sie die angegebene Datei
#  -f =>Zwangsausführung
RUN wget https://repo.continuum.io/archive/Anaconda3-2019.10-Linux-x86_64.sh && \
    sh /opt/Anaconda3-2019.10-Linux-x86_64.sh -b -p /opt/anaconda3 && \
    rm -f Anaconda3-2019.10-Linux-x86_64.sh

#Gehen Sie durch den Pfad von anaconda3
#  ENV =>Umgebungsvariablen ändern
ENV PATH /opt/anaconda3/bin:$PATH

#Pip Upgrade
RUN pip install --upgrade pip

#Kehre direkt unter root zurück
WORKDIR /

#Öffnen Sie das Jupiter-Labor, wenn Sie den Container starten
#  CMD =>Geben Sie den Befehl an, der ausgeführt werden soll, wenn der Container gestartet wird
#  "jupyter", "lab" =>Starten Sie das Jupiter-Labor
#  "--ip=0.0.0.0" =>IP-Einschränkungen entfernen
#  "--allow-root" =>Root-Benutzer zulassen, nicht gut für die Sicherheit
#  "LabApp.token=''" = >Es kann ohne Token gestartet werden. Nicht gut für die Sicherheit
CMD ["jupyter", "lab", "--ip=0.0.0.0", "--allow-root", "--LabApp.token=''"]

Image erstellen

Führen Sie das Verzeichnis aus, in dem sich die Docker-Datei befindet


docker build -t my-anaconda .

-t Geben Sie dem Bild, das Sie erstellen möchten, einen beliebigen Namen.

. Das Verzeichnis, in dem sich die Docker-Datei befindet, wird angegeben. Geben Sie dieses Mal das aktuelle Verzeichnis an.

Container starten


docker run -it \
-p 8888:8888 \
--rm \
--name my-container(Irgendein)\
-v Desktop/ds_python:/opt \
my-anaconda

Siehe unten für diesen Teil [https://qiita.com/kajima/items/178611c4c405267271a6](https://qiita.com/kajima/items/178611c4c405267271a6)

Wenn Sie diesen Container ausführen

I 11:42:41.250 LabApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 11:42:41.535 LabApp] All authentication is disabled.  Anyone who can connect to this server will be able to run code.
[I 11:42:41.546 LabApp] JupyterLab extension loaded from /opt/anaconda3/lib/python3.7/site-packages/jupyterlab
[I 11:42:41.546 LabApp] JupyterLab application directory is /opt/anaconda3/share/jupyter/lab
[I 11:42:41.548 LabApp] Serving notebooks from local directory: /
[I 11:42:41.548 LabApp] The Jupyter Notebook is running at:
[I 11:42:41.548 LabApp] http://23a5a126fd40:8888/
[I 11:42:41.548 LabApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[W 11:42:41.552 LabApp] No web browser found: could not locate runnable browser.

OK, wenn ein solcher Bildschirm angezeigt wird

Geben Sie danach im Webbrowser "localhost: 8888" ein und überprüfen Sie es.
スクリーンショット 2020-08-27 20.51.30.png
OK, wenn dies auf dem Bildschirm angezeigt wird

Am Ende

Wenn Sie danach eine Bibliothek oder ein Paket in anaconda möchten, können Sie es installieren, indem Sie "RUN" in die Docker-Datei schreiben. Als nächstes möchte ich eine Docker-Datei für die Webentwicklung schreiben.

Referenz

https://qiita.com/komiya_____/items/96c14485eb035701e218 https://www.udemy.com/course/aidocker/learn/lecture/20311429#overview

Recommended Posts

Schreiben Sie eine Docker-Datei, um jupyter-lab auf Ubuntu zu starten
[Basic] So schreiben Sie ein Dockerfile Selbstlernend ②
So erstellen Sie eine Pytorch-Umgebung unter Ubuntu
So schreiben Sie ein benutzerorientiertes Programm (1)
[Hinweis] Ablauf von der Docker-Installation bis zum Start von JupyterLab unter Ubuntu
Ich habe eine Docker-Datei erstellt, um Glassfish 5 mit Oracle Java zu starten
Verwendung von Bio-Formaten unter Ubuntu 20.04
Erstellen Sie eine XAMPP-Umgebung unter Ubuntu
So installieren Sie WildFly unter Ubuntu 18.04
Ein Hinweis, als ich süchtig danach war, Ubuntu auf WSL1 in WSL2 zu konvertieren
Ich möchte ein schönes build.gradle schreiben
Minimale Schritte zum Einrichten einer Ruby-Umgebung mit rbenv unter Ubuntu 20.04
[Einführung in Java] So schreiben Sie ein Java-Programm
Ich möchte einen Unit Test schreiben!
Ich möchte PHP 7.2 unter Ubuntu 20.04 installieren.
[Ruby] Erstellen einer Ruby-Entwicklungsumgebung unter Ubuntu
Beispiel zum Starten von Ubuntu mit Deployment mit Client-Go
[SpringBoot] So schreiben Sie einen Controller-Test
Stellen Sie auf Raspberry Pi eine serielle Verbindung zu Ubuntu her
Schienen: Wie man eine Rechenaufgabe schön schreibt
Zwei Möglichkeiten, einen Thread in Java + @ zu starten
[Rails] Wie schreibe ich, wenn ich eine Unterabfrage mache?
So installieren Sie Netzwerktreiber unter eigenständigem Ubuntu
Erstellen eines Hadoop-Clusters (Cloudera Manager unter Ubuntu 18.04)
Mit ShiftJIS in Datei schreiben ・ Datei lesen (Kotlin / JVM)
Ich möchte eine einfache Wiederholung einer Zeichenkette schreiben
So installieren Sie mehrere JDKs unter Ubuntu 18.04 LTS
Rippen Sie eine CD mit Ubuntu 18.04 LTS auf MP3
[Java] Memo zum Schreiben der Quelle
So führen Sie NullpoMino 7.5.0 unter Ubuntu 20.04.1 64-Bit-Version aus
Hinweise zum Schreiben von Kommentaren auf Englisch
[Einführung] Erstellen Sie eine Ruby on Rails-Anwendung
[Ruby on Rails] Wie schreibe ich eine Enumeration auf Japanisch?
So schreiben Sie einen Komponententest für Spring Boot 2
java: Wie schreibe ich eine generische Typliste? [Hinweis]
So funktioniert JavaScript auf einer bestimmten Seite
So installieren Sie den NVIDIA-Treiber auf dem SSH-Ziel Ubuntu
So schreiben Sie eine Datumsvergleichssuche in Rails
[Java] Wie man Aufgaben regelmäßig ausführt
So starten Sie TOMCAT durch Angabe von JAVA_HOME unter Windows
Was ist zu sehen, wenn IntelliJ nicht auf einem Mac gestartet wird?
Wie schreibe ich einen Core Mod in Minecraft Forge 1.15.2
[Java] So unterbrechen Sie eine Zeile mit StringBuilder