GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Docker

So installieren und verwenden Sie Docker unter Ubuntu 22.04

Einführung

Docker ist eine Anwendung, die das Verwalten von Anwendungsprozessen in Containern vereinfacht . Mit Containern können Sie Ihre Anwendungen in ressourcenisolierten Prozessen ausführen. Sie ähneln virtuellen Maschinen, aber Container sind portabler, ressourcenschonender und abhängiger vom Hostbetriebssystem.

Eine detaillierte Einführung in die verschiedenen Komponenten eines Docker-Containers finden Sie unter The Docker Ecosystem:An Introduction to Common Components.

In diesem Tutorial installieren und verwenden Sie Docker Community Edition (CE) unter Ubuntu 22.04. Sie installieren Docker selbst, arbeiten mit Containern und Images und pushen ein Image in ein Docker-Repository.

Voraussetzungen

Um diesem Tutorial zu folgen, benötigen Sie Folgendes:

  • Ein Ubuntu 22.04-Server, der gemäß der Ubuntu 22.04-Anleitung zur Ersteinrichtung des Servers eingerichtet wurde, einschließlich eines sudo Nicht-root Benutzer und eine Firewall.
  • Ein Konto auf Docker Hub, wenn Sie Ihre eigenen Images erstellen und sie an Docker Hub übertragen möchten, wie in den Schritten 7 und 8 gezeigt.

Schritt 1 – Docker installieren

Das im offiziellen Ubuntu-Repository verfügbare Docker-Installationspaket ist möglicherweise nicht die neueste Version. Um sicherzustellen, dass wir die neueste Version erhalten, installieren wir Docker aus dem offiziellen Docker-Repository. Dazu fügen wir eine neue Paketquelle hinzu, fügen den GPG-Schlüssel von Docker hinzu, um sicherzustellen, dass die Downloads gültig sind, und installieren dann das Paket.

Aktualisieren Sie zunächst Ihre vorhandene Paketliste:

  1. sudo apt update

Installieren Sie als Nächstes einige vorausgesetzte Pakete, die apt zulassen Pakete über HTTPS verwenden:

  1. sudo apt install apt-transport-https ca-certificates curl software-properties-common

Fügen Sie dann den GPG-Schlüssel für das offizielle Docker-Repository zu Ihrem System hinzu:

  1. curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Fügen Sie das Docker-Repository zu den APT-Quellen hinzu:

  1. echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Aktualisieren Sie Ihre vorhandene Paketliste erneut, damit die Hinzufügung erkannt wird:

  1. sudo apt update

Stellen Sie sicher, dass Sie aus dem Docker-Repo statt aus dem standardmäßigen Ubuntu-Repo installieren:

  1. apt-cache policy docker-ce

Sie sehen eine Ausgabe wie diese, obwohl die Versionsnummer für Docker anders sein kann:

Ausgabe der apt-cache-Richtlinie docker-ce
docker-ce:
  Installed: (none)
  Candidate: 5:20.10.14~3-0~ubuntu-jammy
  Version table:
     5:20.10.14~3-0~ubuntu-jammy 500
        500 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages
     5:20.10.13~3-0~ubuntu-jammy 500
        500 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages

Beachten Sie, dass docker-ce ist nicht installiert, aber der Installationskandidat stammt aus dem Docker-Repository für Ubuntu 22.04 (jammy ).

Installieren Sie abschließend Docker:

  1. sudo apt install docker-ce

Docker sollte jetzt installiert, der Daemon gestartet und der Prozess aktiviert sein, um beim Booten zu starten. Überprüfen Sie, ob es ausgeführt wird:

  1. sudo systemctl status docker

Die Ausgabe sollte der folgenden ähneln und zeigen, dass der Dienst aktiv ist und ausgeführt wird:

Output● docker.service - Docker Application Container Engine
     Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2022-04-01 21:30:25 UTC; 22s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 7854 (dockerd)
      Tasks: 7
     Memory: 38.3M
        CPU: 340ms
     CGroup: /system.slice/docker.service
             └─7854 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Durch die Installation von Docker erhalten Sie jetzt nicht nur den Docker-Dienst (Daemon), sondern auch den docker Befehlszeilendienstprogramm oder den Docker-Client. Wir untersuchen, wie Sie den docker verwenden Befehl später in diesem Tutorial.

Schritt 2 – Ausführen des Docker-Befehls ohne Sudo (optional)

Standardmäßig ist das docker Der Befehl kann nur als root ausgeführt werden Benutzer oder von einem Benutzer im Docker -Gruppe, die während des Installationsprozesses von Docker automatisch erstellt wird. Wenn Sie versuchen, docker auszuführen Befehl, ohne ihm sudo voranzustellen oder ohne im Docker zu sein Gruppe erhalten Sie eine Ausgabe wie diese:

Outputdocker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.

Wenn Sie die Eingabe von sudo vermeiden möchten wenn Sie docker ausführen Befehl, fügen Sie Ihren Benutzernamen zum docker hinzu Gruppe:

  1. sudo usermod -aG docker ${USER}

Um die neue Gruppenmitgliedschaft zu übernehmen, melden Sie sich vom Server ab und wieder an oder geben Sie Folgendes ein:

  1. su - ${USER}

Sie werden aufgefordert, Ihr Benutzerkennwort einzugeben, um fortzufahren.

Bestätigen Sie, dass Ihr Benutzer jetzt zum Docker hinzugefügt wurde gruppieren, indem Sie Folgendes eingeben:

  1. groups
Outputsammy sudo docker

Wenn Sie einen Benutzer zum docker hinzufügen müssen Gruppe, als die Sie nicht angemeldet sind, deklarieren Sie diesen Benutzernamen explizit mit:

  1. sudo usermod -aG docker username

Der Rest dieses Artikels geht davon aus, dass Sie docker ausführen Befehl als Benutzer im Docker Gruppe. Wenn Sie sich dagegen entscheiden, stellen Sie den Befehlen bitte sudo voran .

Sehen wir uns den docker an Befehl weiter.

Schritt 3 – Verwenden des Docker-Befehls

Mit docker besteht darin, ihm eine Kette von Optionen und Befehlen gefolgt von Argumenten zu übergeben. Die Syntax hat folgende Form:

  1. docker [option] [command] [arguments]

Um alle verfügbaren Unterbefehle anzuzeigen, geben Sie Folgendes ein:

  1. docker

Ab Docker-Version 20.10.14 , enthält die vollständige Liste der verfügbaren Unterbefehle:

Output  attach      Attach local standard input, output, and error streams to a running container
  build       Build an image from a Dockerfile
  commit      Create a new image from a container's changes
  cp          Copy files/folders between a container and the local filesystem
  create      Create a new container
  diff        Inspect changes to files or directories on a container's filesystem
  events      Get real time events from the server
  exec        Run a command in a running container
  export      Export a container's filesystem as a tar archive
  history     Show the history of an image
  images      List images
  import      Import the contents from a tarball to create a filesystem image
  info        Display system-wide information
  inspect     Return low-level information on Docker objects
  kill        Kill one or more running containers
  load        Load an image from a tar archive or STDIN
  login       Log in to a Docker registry
  logout      Log out from a Docker registry
  logs        Fetch the logs of a container
  pause       Pause all processes within one or more containers
  port        List port mappings or a specific mapping for the container
  ps          List containers
  pull        Pull an image or a repository from a registry
  push        Push an image or a repository to a registry
  rename      Rename a container
  restart     Restart one or more containers
  rm          Remove one or more containers
  rmi         Remove one or more images
  run         Run a command in a new container
  save        Save one or more images to a tar archive (streamed to STDOUT by default)
  search      Search the Docker Hub for images
  start       Start one or more stopped containers
  stats       Display a live stream of container(s) resource usage statistics
  stop        Stop one or more running containers
  tag         Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
  top         Display the running processes of a container
  unpause     Unpause all processes within one or more containers
  update      Update configuration of one or more containers
  version     Show the Docker version information
  wait        Block until one or more containers stop, then print their exit codes

Geben Sie Folgendes ein, um die für einen bestimmten Befehl verfügbaren Optionen anzuzeigen:

  1. docker docker-subcommand --help

Um systemweite Informationen zu Docker anzuzeigen, verwenden Sie:

  1. docker info

Sehen wir uns einige dieser Befehle an. Wir beginnen mit der Arbeit mit Bildern.

Schritt 4 – Arbeiten mit Docker-Images

Docker-Container werden aus Docker-Images erstellt. Standardmäßig zieht Docker diese Images aus Docker Hub, einer Docker-Registrierung, die von Docker, dem Unternehmen hinter dem Docker-Projekt, verwaltet wird. Jeder kann seine Docker-Images auf Docker Hub hosten, sodass die meisten Anwendungen und Linux-Distributionen, die Sie benötigen, dort gehostete Images haben.

Geben Sie Folgendes ein, um zu prüfen, ob Sie auf Bilder von Docker Hub zugreifen und diese herunterladen können:

  1. docker run hello-world

Die Ausgabe zeigt an, dass Docker korrekt funktioniert:

OutputUnable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete
Digest: sha256:bfea6278a0a267fad2634554f4f0c6f31981eea41c553fdf5a83e95a41d40c38
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

...

Docker konnte anfangs hello-world nicht finden image lokal gespeichert, sodass das Image von Docker Hub heruntergeladen wurde, dem Standard-Repository. Nachdem das Image heruntergeladen wurde, erstellte Docker einen Container aus dem Image und die Anwendung innerhalb des Containers wurde ausgeführt und zeigte die Nachricht an.

Sie können mithilfe von docker nach Bildern suchen, die auf Docker Hub verfügbar sind Befehl mit dem search Unterbefehl. Um beispielsweise nach dem Ubuntu-Image zu suchen, geben Sie Folgendes ein:

  1. docker search ubuntu

Das Skript durchsucht Docker Hub und gibt eine Liste aller Bilder zurück, deren Name mit der Suchzeichenfolge übereinstimmt. In diesem Fall sieht die Ausgabe ähnlich aus:

OutputNAME                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
ubuntu                           Ubuntu is a Debian-based Linux operating sys…   14048     [OK]
websphere-liberty                WebSphere Liberty multi-architecture images …   283       [OK]
ubuntu-upstart                   DEPRECATED, as is Upstart (find other proces…   112       [OK]
neurodebian                      NeuroDebian provides neuroscience research s…   88        [OK]
open-liberty                     Open Liberty multi-architecture images based…   51        [OK]
...

Im OFFIZIELL Spalte, OK weist auf ein Image hin, das von dem Unternehmen hinter dem Projekt erstellt und unterstützt wird. Sobald Sie das Bild identifiziert haben, das Sie verwenden möchten, können Sie es mit pull auf Ihren Computer herunterladen Unterbefehl.

Führen Sie den folgenden Befehl aus, um das offizielle ubuntu herunterzuladen Bild auf Ihren Computer:

  1. docker pull ubuntu

Sie sehen die folgende Ausgabe:

OutputUsing default tag: latest
latest: Pulling from library/ubuntu
e0b25ef51634: Pull complete
Digest: sha256:9101220a875cee98b016668342c489ff0674f247f6ca20dfc91b91c0f28581ae
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

Nachdem ein Image heruntergeladen wurde, können Sie einen Container mit dem heruntergeladenen Image mit run ausführen Unterbefehl. Wie Sie bei hello-world gesehen haben B. wenn ein Bild beim docker nicht heruntergeladen wurde wird mit run ausgeführt Unterbefehl, lädt der Docker-Client zuerst das Image herunter und führt dann einen Container damit aus.

Geben Sie Folgendes ein, um die auf Ihren Computer heruntergeladenen Bilder anzuzeigen:

  1. docker images

Die Ausgabe sieht etwa so aus:

OutputREPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ubuntu              latest              1d622ef86b13        3 weeks ago         73.9MB
hello-world         latest              bf756fb1ae65        4 months ago        13.3kB

Wie Sie später in diesem Tutorial sehen werden, können Bilder, die Sie zum Ausführen von Containern verwenden, geändert und zum Generieren neuer Bilder verwendet werden, die dann hochgeladen (gepusht ist der Fachbegriff) an Docker Hub oder andere Docker-Registries.

Sehen wir uns genauer an, wie Container ausgeführt werden.

Schritt 5 – Ausführen eines Docker-Containers

Die hello-world Container, den Sie im vorherigen Schritt ausgeführt haben, ist ein Beispiel für einen Container, der ausgeführt und beendet wird, nachdem eine Testnachricht ausgegeben wurde. Container können viel nützlicher sein, und sie können interaktiv sein. Schließlich sind sie virtuellen Maschinen ähnlich, nur ressourcenschonender.

Lassen Sie uns als Beispiel einen Container mit dem neuesten Image von Ubuntu ausführen. Die Kombination des -i und -t Schalter gibt Ihnen interaktiven Shell-Zugriff auf den Container:

  1. docker run -it ubuntu

Ihre Eingabeaufforderung sollte sich ändern, um die Tatsache widerzuspiegeln, dass Sie jetzt im Container arbeiten, und diese Form annehmen:

Outputroot@d9b100f2f636:/#

Notieren Sie sich die Container-ID in der Eingabeaufforderung. In diesem Beispiel ist es d9b100f2f636 . Sie benötigen diese Container-ID später, um den Container zu identifizieren, wenn Sie ihn entfernen möchten.

Jetzt können Sie jeden Befehl innerhalb des Containers ausführen. Lassen Sie uns beispielsweise die Paketdatenbank im Container aktualisieren. Sie müssen keinem Befehl sudo voranstellen , weil Sie innerhalb des Containers als Root arbeiten Benutzer:

  1. apt update

Installieren Sie dann eine beliebige Anwendung darin. Lassen Sie uns Node.js installieren:

  1. apt install nodejs

Dadurch wird Node.js im Container aus dem offiziellen Ubuntu-Repository installiert. Überprüfen Sie nach Abschluss der Installation, ob Node.js installiert ist:

  1. node -v

Die Versionsnummer wird in Ihrem Terminal angezeigt:

Outputv12.22.9

Alle Änderungen, die Sie innerhalb des Containers vornehmen, gelten nur für diesen Container.

Um den Container zu verlassen, geben Sie exit ein an der Eingabeaufforderung.

Sehen wir uns als Nächstes die Verwaltung der Container in unserem System an.

Schritt 6 – Verwalten von Docker-Containern

Nachdem Sie Docker eine Weile verwendet haben, haben Sie viele aktive (laufende) und inaktive Container auf Ihrem Computer. Um die aktiven anzuzeigen , verwenden Sie:

  1. docker ps

Sie sehen eine Ausgabe ähnlich der folgenden:

OutputCONTAINER ID        IMAGE               COMMAND             CREATED

In diesem Tutorial haben Sie zwei Container gestartet; eine aus der hello-world image und ein weiteres aus ubuntu Bild. Beide Container werden nicht mehr ausgeführt, sind aber noch auf Ihrem System vorhanden.

Um alle Container – aktive und inaktive – anzuzeigen, führen Sie docker ps aus mit dem -a Schalter:

  1. docker ps -a

Sie sehen eine Ausgabe ähnlich der folgenden:

OutputCONTAINER ID   IMAGE         COMMAND   CREATED         STATUS                     PORTS     NAMES
1c08a7a0d0e4   ubuntu        "bash"     About a minute ago   Exited (0) 7 seconds ago             dazzling_taussig
587000e49d53   hello-world   "/hello"   5 minutes ago        Exited (0) 5 minutes ago             adoring_kowalevski

Um den zuletzt erstellten Container anzuzeigen, übergeben Sie ihm den -l Schalter:

  1. docker ps -l
OutputCONTAINER ID   IMAGE     COMMAND   CREATED         STATUS                     PORTS     NAMES
1c08a7a0d0e4   ubuntu    "bash"    3 minutes ago   Exited (0) 2 minutes ago             dazzling_taussig

Um einen angehaltenen Container zu starten, verwenden Sie docker start , gefolgt von der Container-ID oder dem Namen des Containers. Starten wir den Ubuntu-basierten Container mit der ID 1c08a7a0d0e4 :

  1. docker start 1c08a7a0d0e4

Der Container wird gestartet und Sie können docker ps verwenden um seinen Status zu sehen:

OutputCONTAINER ID   IMAGE     COMMAND   CREATED         STATUS         PORTS     NAMES
1c08a7a0d0e4   ubuntu    "bash"    6 minutes ago   Up 8 seconds             dazzling_taussig

Um einen laufenden Container zu stoppen, verwenden Sie docker stop , gefolgt von der Container-ID oder dem Namen. Dieses Mal verwenden wir den Namen, den Docker dem Container zugewiesen hat, nämlich dazzling_taussig :

  1. docker stop dazzling_taussig

Wenn Sie entschieden haben, dass Sie einen Container nicht mehr benötigen, entfernen Sie ihn mit docker rm Befehl, wieder entweder mit der Container-ID oder dem Namen. Verwenden Sie den docker ps -a Befehl, um die Container-ID oder den Namen für den Container zu finden, der hello-world zugeordnet ist Bild und entfernen Sie es.

  1. docker rm adoring_kowalevski

Mit --name können Sie einen neuen Container starten und ihm einen Namen geben schalten. Sie können auch --rm verwenden wechseln, um einen Container zu erstellen, der sich selbst entfernt, wenn er gestoppt wird. Siehe docker run help Befehl für weitere Informationen zu diesen und anderen Optionen.

Container können in Images umgewandelt werden, die Sie zum Erstellen neuer Container verwenden können. Sehen wir uns an, wie das funktioniert.

Schritt 7 – Übertragen von Änderungen in einem Container auf ein Docker-Image

Wenn Sie ein Docker-Image starten, können Sie Dateien erstellen, ändern und löschen, genau wie bei einer virtuellen Maschine. Die von Ihnen vorgenommenen Änderungen gelten nur für diesen Container. Sie können es starten und stoppen, aber sobald Sie es mit dem docker rm zerstören Befehl, gehen die Änderungen endgültig verloren.

Dieser Abschnitt zeigt Ihnen, wie Sie den Status eines Containers als neues Docker-Image speichern.

Nach der Installation von Node.js im Ubuntu-Container haben Sie jetzt einen Container, der von einem Image ausgeführt wird, aber der Container unterscheidet sich von dem Image, mit dem Sie ihn erstellt haben. Aber vielleicht möchten Sie diesen Node.js-Container später als Grundlage für neue Bilder wiederverwenden.

Übertragen Sie dann die Änderungen mit dem folgenden Befehl in eine neue Docker-Image-Instanz.

  1. docker commit -m "What you did to the image" -a "Author Name" container_id repository/new_image_name

Das -m switch ist für die Commit-Nachricht, die Ihnen und anderen hilft zu wissen, welche Änderungen Sie vorgenommen haben, während -a wird verwendet, um den Autor anzugeben. Die container_id ist diejenige, die Sie sich zuvor im Tutorial notiert haben, als Sie die interaktive Docker-Sitzung gestartet haben. Sofern Sie keine zusätzlichen Repositories auf Docker Hub erstellt haben, ist das repository ist normalerweise Ihr Docker Hub-Benutzername.

Zum Beispiel für den Benutzer sammy , mit der Container-ID d9b100f2f636 , wäre der Befehl:

  1. docker commit -m "added Node.js" -a "sammy" d9b100f2f636 sammy/ubuntu-nodejs

Wenn Sie sich verpflichten ein Bild, wird das neue Bild lokal auf Ihrem Computer gespeichert. Später in diesem Tutorial erfahren Sie, wie Sie ein Image in eine Docker-Registrierung wie Docker Hub übertragen, damit andere darauf zugreifen können.

Das erneute Auflisten der Docker-Images zeigt das neue Image sowie das alte, von dem es abgeleitet wurde:

  1. docker images

Sie sehen eine Ausgabe wie diese:

OutputREPOSITORY               TAG                 IMAGE ID            CREATED             SIZE
sammy/ubuntu-nodejs   latest              7c1f35226ca6        7 seconds ago       179MB
...

In diesem Beispiel ubuntu-nodejs ist das neue Image, das von dem bestehenden ubuntu abgeleitet wurde Bild vom Docker-Hub. Der Größenunterschied spiegelt die vorgenommenen Änderungen wider. Und in diesem Beispiel war die Änderung, dass NodeJS installiert wurde. Wenn Sie also das nächste Mal einen Container mit Ubuntu mit vorinstalliertem NodeJS ausführen müssen, können Sie einfach das neue Image verwenden.

Sie können Images auch aus einem Dockerfile erstellen , mit dem Sie die Installation von Software in einem neuen Image automatisieren können. Dies würde jedoch den Rahmen dieses Tutorials sprengen.

Jetzt teilen wir das neue Image mit anderen, damit sie daraus Container erstellen können.

Schritt 8 – Docker-Images in ein Docker-Repository übertragen

Der nächste logische Schritt nach dem Erstellen eines neuen Images aus einem vorhandenen Image besteht darin, es mit einigen ausgewählten Freunden, der ganzen Welt auf Docker Hub oder einer anderen Docker-Registrierung, auf die Sie Zugriff haben, zu teilen. Um ein Image an Docker Hub oder eine andere Docker-Registrierung zu übertragen, müssen Sie dort ein Konto haben.

Um Ihr Image per Push zu übertragen, melden Sie sich zuerst bei Docker Hub an.

  1. docker login -u docker-registry-username

Sie werden aufgefordert, sich mit Ihrem Docker-Hub-Passwort zu authentifizieren. Wenn Sie das richtige Passwort angegeben haben, sollte die Authentifizierung erfolgreich sein.

Hinweis: Wenn sich Ihr Docker-Registrierungsbenutzername von dem lokalen Benutzernamen unterscheidet, den Sie zum Erstellen des Images verwendet haben, müssen Sie Ihr Image mit Ihrem Registrierungsbenutzernamen taggen. Für das im letzten Schritt angegebene Beispiel würden Sie Folgendes eingeben:

  1. docker tag sammy/ubuntu-nodejs docker-registry-username/ubuntu-nodejs

Dann können Sie Ihr eigenes Bild pushen mit:

  1. docker push docker-registry-username/docker-image-name

Um die ubuntu-nodejs zu pushen Bild an sammy Repository wäre der Befehl:

  1. docker push sammy/ubuntu-nodejs

Der Prozess kann einige Zeit in Anspruch nehmen, da die Bilder hochgeladen werden, aber wenn er abgeschlossen ist, sieht die Ausgabe so aus:

OutputThe push refers to a repository [docker.io/sammy/ubuntu-nodejs]
e3fbbfb44187: Pushed
5f70bf18a086: Pushed
a3b5c80a4eba: Pushed
7f18b442972b: Pushed
3ce512daaf78: Pushed
7aae4540b42d: Pushed

...


Nachdem Sie ein Image in eine Registrierung übertragen haben, sollte es im Dashboard Ihres Kontos aufgeführt sein, wie im Bild unten gezeigt.

Wenn ein Push-Versuch zu einem Fehler dieser Art führt, haben Sie sich wahrscheinlich nicht angemeldet:

OutputThe push refers to a repository [docker.io/sammy/ubuntu-nodejs]
e3fbbfb44187: Preparing
5f70bf18a086: Preparing
a3b5c80a4eba: Preparing
7f18b442972b: Preparing
3ce512daaf78: Preparing
7aae4540b42d: Waiting
unauthorized: authentication required

Melden Sie sich mit docker login an und wiederholen Sie den Push-Versuch. Überprüfen Sie dann, ob es auf Ihrer Docker Hub-Repository-Seite vorhanden ist.

Sie können jetzt docker pull sammy/ubuntu-nodejs um das Image auf einen neuen Computer zu ziehen und es zum Ausführen eines neuen Containers zu verwenden.

Schlussfolgerung

In diesem Tutorial haben Sie Docker installiert, mit Images und Containern gearbeitet und ein geändertes Image an Docker Hub gepusht. Nachdem Sie nun die Grundlagen kennen, erkunden Sie die anderen Docker-Tutorials in der DigitalOcean-Community.


Docker
  1. So installieren und verwenden Sie Docker unter Ubuntu 20.04

  2. So installieren und verwenden Sie Wine unter Ubuntu 20.04

  3. So installieren und verwenden Sie Docker unter Ubuntu 18.04

  4. So installieren und verwenden Sie Docker Compose unter Ubuntu 18.04

  5. So installieren und verwenden Sie Docker in Ubuntu 20.04

So installieren und verwenden Sie iTunes unter Ubuntu 20.04

So installieren und verwenden Sie R unter Ubuntu

So installieren und verwenden Sie Docker Compose unter Ubuntu 20.04

So installieren und verwenden Sie Docker Compose unter Ubuntu 22.04

So installieren und verwenden Sie Docker unter Ubuntu (in der realen Welt)

So installieren und verwenden Sie Docker unter Ubuntu 20.04