Erste Schritte mit Docker mit VS-Code

Ziel

Docker installiert Verwenden Sie Docker zum ersten Mal.

Annahme

Befehlszeile kann verwendet werden VSCode installiert

Über diesen Artikel

Im allgemeinen Docker-Lernablauf werden wir beim Erlernen des Docker-Befehls das Konzept von Bildern und Containern verstehen und dann mit dem Docker-Compose fortfahren.

In diesem Artikel werde ich die Erläuterung von Konzepten wie Bildern und Containern weglassen und die Befehle durch die Erweiterung vscode ersetzen. Auf diese Weise lernen Sie mindestens den Docker-Compose-Befehl und können ihn schnell verschieben, um Docker praktisch zu verstehen.

Ziel dieses Artikels

Sie können jetzt einige Docker-Compose-Befehle verwenden. Sie können eine Ausführungsumgebung für nodejs erstellen.

VS Code-Umgebungskonstruktion

スクリーンショット 2020-09-14 13.18.11.jpg

スクリーンショット 2020-09-13 19.36.04.png

Installieren Sie dies im Voraus.

Erstellen Sie eine NodeJS-Umgebung

Erstellen Sie zunächst einen Ordner mit dem Namen "nodejssample" an einem geeigneten Speicherort. Dieser Name ist angemessen.

Erstellen Sie dann eine Datei mit dem Namen "docker-compose.yml" direkt unter diesem Ordner, wie unten gezeigt.

docker-compose.yml


version: "3"
services:
    node: 
        image: node:14.10
        volumes: 
            - .:/project
        tty: true
        working_dir: /project
        command: bash

Dieser Inhalt wird später erklärt.

Und erstellen Sie "app.js" in derselben Hierarchie

app.js


const main = () => {
    console.log("hello node!");
}

main();

スクリーンショット 2020-09-13 19.42.35.png

OK, wenn dies passiert

Überprüfen Sie dann einmal den aktuellen Status von Docker.

Wenn Sie die Docker-Markierung auf der linken Seite von VS Code auswählen, wird der folgende Bildschirm angezeigt.

スクリーンショット 2020-09-13 19.43.38.png

Dieser Bildschirm wird möglicherweise nicht angezeigt, wenn Docker nicht ausgeführt wird oder wenn Sie Docker aus irgendeinem Grund bereits ausgeführt haben.

Übertragen Sie den Befehl nach der Bestätigung wie folgt an die Stelle von docker-compose.yml in der Befehlszeile.

Befehl zum Starten der virtuellen Umgebung

docker-compose up -d

Dann startet der Download und der Bildschirm sieht wie folgt aus.

nodejssample $ docker-compose up -d
Creating network "nodejssample_default" with the default driver
4f250268ed6a: Pull complete1b49aa113642: Pull complete
c159512f4cc2: Pull complete8439168fd8dc: Pull complete55abbc6cc158: Pull completee5c5821cd889: Pull complete5a7679f70bad: Pull completed827e86d1182: Pull complete2484b06a6da1: Pull complete
Digest: sha256:21658666c0eabc9006b279e826e540d20e2c835507347d9c2f3f7dd5820ec9e3
Status: Downloaded newer image for node:14.10
Creating nodejssample_node_1 ... done

Der Bildschirm der Registerkarte Docker sieht folgendermaßen aus. スクリーンショット 2020-09-13 19.52.05.jpg Eine mit Docker erstellte virtuelle Umgebung wird als Container bezeichnet. Das Bild dient zum Erstellen eines Containers.

スクリーンショット 2020-09-14 14.03.23.png

Nachdem die virtuelle Umgebung gestartet wurde, führen wir nodejs in dieser virtuellen Umgebung aus.

スクリーンショット 2020-09-13 19.57.17.png

Klicken Sie mit der rechten Maustaste auf den Zielcontainer und drücken Sie Attack Shell. Dann erscheint der folgende Bildschirm.

スクリーンショット 2020-09-13 20.03.04.png Dies ist der Zustand innerhalb des Containers.

root@df80b994d93d:/project# ls
app.js  docker-compose.yml
root@df80b994d93d:/project#   

Dieselbe Datei wie das VS-Code-Projekt wird im Befehl ls angezeigt. Und da dies ein Container der Umgebung von nodejs ist, prüfen Sie, ob nodejs verwendet werden kann.

root@df80b994d93d:/project# node -v
v14.10.1

OK, wenn dies herauskommt

Führen Sie die vorbereitete app.js aus.

root@df80b994d93d:/project# node app.js
hello node!

Ich konnte es ausführen.

Löschen Sie die virtuelle Umgebung.

Die virtuelle Umgebung ist schwer, wenn sie unbeaufsichtigt bleibt. Löschen Sie sie daher, wenn Sie fertig sind.

スクリーンショット 2020-09-13 20.49.21.png

Löschen Sie das Bild.

Bei Bildern wird "Docker-Compose-Up" dadurch schneller. Wenn Sie es also häufig verwenden, können Sie es verlassen.

Wenn Sie es eine Weile nicht benutzen, schalten Sie es aus.

スクリーンショット 2020-09-13 20.50.28.png

Jetzt können Sie eine virtuelle Umgebung erstellen, Programme in der virtuellen Umgebung ausführen und die virtuelle Umgebung löschen.

Kommentar

Über docker-compose.yml

Die grundlegende Syntax von Docker-Compose lautet wie folgt

docker-Syntax verfassen


version:Versionsnummer.
services:
Dienstname:
Serviceeinstellungen...

Die neueste Version ist 3 Sie können den Dienst selbst benennen. Alles ist ok.

docker-compose.yml


version: "3" #Die neueste Version ist 3
services: #Dies ist behoben
    node: #Alles ist in Ordnung, aber da das Image des Knotens verwendet wird, ist der Dienstname nur Knoten.
        image: node:14.10
        volumes: 
            - .:/project
        tty: true
        working_dir: /project
        command: bash

Es gibt viele Serviceeinstellungen, aber am besten lesen Sie die offizielle Dokumentation, um weitere Informationen zu erhalten.

Referenz

Ich werde die diesmal verwendeten Einstellungselemente einzeln erläutern.

image Beschrieb das Bild für die Herstellung eines Containers.

.yml


image:Bildname:Verlinke den Namen

Der Tag-Name kann als Version angesehen werden

Es gibt verschiedene Bilder, die von Docker auf einer Site namens Docker Hub verwendet werden. Knotenbild

スクリーンショット 2020-09-14 0.06.37.jpg

Dies ist das in diesem Artikel verwendete Tag

volumes Verknüpfen Sie den lokalen Ordner mit dem Containerordner.

.yml


        volumes: 
            -Lokaler Ordnerpfad:Pfad des Containerordners

Wenn Sie dies nicht festlegen, können Sie lokal platzierte Dateien wie "app.js" nicht aus dem Container sehen.

tty

tty: true

Verhindert, dass der Container sofort nach Ausführung der durch den Befehl angegebenen Verarbeitung angehalten wird. Erforderlich beim Betreten eines Containers mit "Attach Shell".

working_dir Hier kann der Befehl immer noch ausgeführt werden. Wenn Sie "Shell anhängen" ausführen, befindet es sich auch in dem hier angegebenen Ordner.

command Verarbeitung, die ausgeführt wird, wenn der Container gestartet wird. Dieses Mal habe ich bash angegeben, also fühlt es sich an, als würde ich das Terminal öffnen und warten.

Es gibt verschiedene andere Einstellungen. Wenn Sie also einen anderen Docker-Artikel sehen und etwas finden, das Sie nicht wissen, sollten Sie die Referenz lesen.

Über Docker-Compose -d

Referenz

Ein Befehl zum Lesen von "docker-compose.yml" und zum Herunterladen eines Bildes, falls erforderlich, um einen Container zu erstellen.

-d ist eine Option, um im Hintergrund zu beginnen.

Recommended Posts

Erste Schritte mit Docker mit VS-Code
Docker-Management mit VS-Code
[Google Cloud] Erste Schritte mit Docker
Erste Schritte mit Docker für Mac (Installation)
Lombok mit VS Code
Erste Schritte mit DBUnit
Erste Schritte mit Ruby
Erste Schritte mit Swift
Erste Schritte mit Doma-Transaktionen
Erste Schritte mit Java Collection
Formatieren Sie Ruby mit VS-Code
Hallo Welt mit VS Code!
Erste Schritte mit JSP & Servlet
Erste Schritte mit Ruby-Modulen
Erste Schritte mit Java_Kapitel 5_Praktische Übungen 5_4
Spring Boot Programmierung mit VS Code
Erstellen Sie Java mit Mac vs Code
Erste Schritte mit der Git Hub Container Registry anstelle von Docker Hub
Zusammenfassung der Verfahren zum Entwickeln in einem Docker-Container mit VS-Code
Erstellen einer Haskell-Umgebung mit Docker + VS-Code unter Windows 10 Home
Erste Schritte mit dem Doma-Criteria API Cheet Sheet
Bereiten Sie die Java-Entwicklungsumgebung mit VS Code vor
Erste Schritte mit Ruby für Java-Ingenieure
Einführung in den Parametrisierungstest in JUnit
Versuchen Sie es mit Spring Boot mit VS-Code
Einführung in Java ab 0 Teil 1
Erste Schritte mit Ratpack (4) -Routing & Static Content
Beginnen Sie mit der Funktionsweise von JVM GC
Erste Schritte mit dem Language Server Protocol mit LSP4J
Erste Schritte mit dem Erstellen von Ressourcenpaketen mit ListResoueceBundle
Erleben Sie .NET 5 mit Docker und Visual Studio Code
Erste Schritte mit Java_Kapitel 8_Über "Instanzen" und "Klassen"
Links & Memos für den Einstieg in Java (für mich)
Erste Schritte mit der Doma-Projektion mit der Criteira-API
Erste Schritte mit Java 1 Ähnliche Dinge zusammenstellen
Erstellen Sie mit Gradle mit VSCode Java → Ausführen
Erste Schritte mit Kotlin zum Senden an Java-Entwickler
Vielleicht funktioniert es! Beginnen wir mit Docker!
Erste Schritte mit Doma-Using Joins mit der Criteira-API
Erstellen Sie eine Spring Boot-Umgebung mit Windows + VS-Code
Erste Schritte mit Doma-Einführung in die Kriterien-API
Versuchen Sie, ein Java-Programm mit VS-Code zu debuggen
Erstellen Sie eine Java-Entwicklungsumgebung mit VS Code
Ich habe versucht, mit Gradle auf Heroku zu beginnen
Erstellen Sie eine Java-Entwicklungsumgebung mit VS Code auf dem Mac
Verknüpfen Sie das Docker-Protokoll mit AWS CloudWatch und überwachen Sie es in Echtzeit mit VS Code
Starten Sie MariaDB mit Docker
Explodiere Docker mit WSL2
Verwenden Sie Puphpeteer mit Docker
Erstellen Sie eine Ruby-Debug-Umgebung mit VS Code von Windows 10