Einführung
Docker ist eine Anwendung, mit der Anwendungsprozesse einfach und problemlos in einem Container ausgeführt werden können, der wie virtuelle Maschinen aussieht, nur portabler, ressourcenschonender und stärker vom Host-Betriebssystem abhängig ist. Eine detaillierte Einführung in die verschiedenen Komponenten eines Docker-Containers finden Sie unterThe Docker Ecosystem: An Introduction to Common Components.
Es gibt zwei Methoden, um Docker unter Ubuntu 16.04 zu installieren. Eine Methode besteht darin, es auf einer vorhandenen Installation des Betriebssystems zu installieren. Das andere beinhaltet das Hochfahren eines Servers mit einem Tool namensDocker Machine, das Docker automatisch darauf installiert.
In diesem Tutorial erfahren Sie, wie Sie es in einer vorhandenen Installation von Ubuntu 16.04 installieren und verwenden.
Voraussetzungen
Um diesem Tutorial zu folgen, benötigen Sie Folgendes:
-
Ein Ubuntu 16.04-Server, der mit einem Nicht-Root-Benutzer mit Sudo-Berechtigungen und einer grundlegenden Firewall eingerichtet wurde, wie inInitial Setup Guide for Ubuntu 16.04 erläutert
-
Ein Konto fürDocker Hub, wenn Sie Ihre eigenen Bilder erstellen und an Docker Hub senden möchten, wie in den Schritten 7 und 8 gezeigt
[[Schritt-1 - Installieren des Dockers]] == Schritt 1 - Installieren von Docker
Das Docker-Installationspaket, das im offiziellen Ubuntu 16.04-Repository verfügbar ist, ist möglicherweise nicht die neueste Version. Installieren Sie Docker aus dem offiziellen Docker-Repository, um die neueste Version zu erhalten. In diesem Abschnitt erfahren Sie, wie Sie genau das tun.
Fügen Sie zunächst den GPG-Schlüssel für das offizielle Docker-Repository zu Ihrem System hinzu, um sicherzustellen, dass die Downloads gültig sind:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Fügen Sie das Docker-Repository zu APT-Quellen hinzu:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Aktualisieren Sie als Nächstes die Paketdatenbank mit den Docker-Paketen aus dem neu hinzugefügten Repository:
sudo apt-get update
Stellen Sie sicher, dass Sie die Installation vom Docker-Repository anstelle des Standard-Ubuntu 16.04-Repository durchführen:
apt-cache policy docker-ce
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
Ausgabe von apt-cache policy docker-ce
docker-ce:
Installed: (none)
Candidate: 18.06.1~ce~3-0~ubuntu
Version table:
18.06.1~ce~3-0~ubuntu 500
500 https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
Beachten Sie, dassdocker-ce
nicht installiert ist, der Kandidat für die Installation jedoch aus dem Docker-Repository für Ubuntu 16.04 (xenial
) stammt.
Zum Schluss installieren Sie Docker:
sudo apt-get install -y docker-ce
Docker sollte jetzt installiert, der Daemon gestartet und der Prozess für den Start beim Booten aktiviert sein. Überprüfen Sie, ob es ausgeführt wird:
sudo systemctl status docker
Die Ausgabe sollte der folgenden ähneln und anzeigen, 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 Thu 2018-10-18 20:28:23 UTC; 35s ago
Docs: https://docs.docker.com
Main PID: 13412 (dockerd)
CGroup: /system.slice/docker.service
├─13412 /usr/bin/dockerd -H fd://
└─13421 docker-containerd --config /var/run/docker/containerd/containerd.toml
Wenn Sie Docker jetzt installieren, erhalten Sie nicht nur den Docker-Dienst (Daemon), sondern auch das Befehlszeilenprogrammdocker
oder den Docker-Client. Wir werden später in diesem Tutorial untersuchen, wie Sie den Befehldocker
verwenden.
[[Schritt 2 - Ausführen des Docker-Befehls ohne Sudo-optional]] == Schritt 2 - Ausführen des Docker-Befehls ohne Sudo (optional)
Standardmäßig erfordert das Ausführen des Befehlsdocker
Root-Berechtigungen. Das heißt, Sie müssen dem Befehlsudo
voranstellen. Es kann auch von einem Benutzer in der Gruppedockerausgeführt werden, die bei der Installation von Docker automatisch erstellt wird. Wenn Sie versuchen, den Befehldocker
auszuführen, ohnesudo
voranzustellen oder ohne zur Docker-Gruppe zu gehören, erhalten Sie eine Ausgabe wie folgt:
Outputdocker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.
Wenn Sie vermeiden möchten,sudo
einzugeben, wenn Sie den Befehldocker
ausführen, fügen Sie Ihren Benutzernamen zur Gruppedocker
hinzu:
sudo usermod -aG docker ${USER}
Um die neue Gruppenmitgliedschaft zu übernehmen, können Sie sich vom Server abmelden und wieder anmelden oder Folgendes eingeben:
su - ${USER}
Sie werden aufgefordert, das Kennwort Ihres Benutzers einzugeben, um fortzufahren. Anschließend können Sie bestätigen, dass Ihr Benutzer jetzt zur Gruppedocker
hinzugefügt wurde, indem Sie Folgendes eingeben:
id -nG
Outputsammy sudo docker
Wenn Sie der Gruppedocker
, unter der Sie nicht angemeldet sind, einen Benutzer hinzufügen müssen, deklarieren Sie diesen Benutzernamen explizit mit:
sudo usermod -aG docker username
Im Rest dieses Artikels wird davon ausgegangen, dass Sie den Befehldocker
als Benutzer in der Docker-Benutzergruppe ausführen. Wenn Sie dies nicht möchten, stellen Sie den Befehlen bittesudo
voran.
[[Schritt-3 -—- Verwenden des Docker-Befehls]] == Schritt 3 - Verwenden des Docker-Befehls
Wenn Docker installiert ist und funktioniert, ist es jetzt an der Zeit, sich mit dem Befehlszeilendienstprogramm vertraut zu machen. Die Verwendung vondocker
besteht darin, eine Kette von Optionen und Befehlen gefolgt von Argumenten zu übergeben. Die Syntax hat folgende Form:
docker [option] [command] [arguments]
Geben Sie Folgendes ein, um alle verfügbaren Unterbefehle anzuzeigen:
docker
Ab Docker 18.06.1 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:
docker docker-subcommand --help
Verwenden Sie zum Anzeigen systemweiter Informationen zu Docker Folgendes:
docker info
[[Schritt 4 - Arbeiten mit Docker-Bildern]] == Schritt 4 - Arbeiten mit Docker-Bildern
Docker-Container werden von Docker-Images ausgeführt. Standardmäßig werden diese Images aus Docker Hub abgerufen, einer Docker-Registrierung, die von Docker verwaltet wird, dem Unternehmen, das hinter dem Docker-Projekt steht. Jeder kann Docker-Images in Docker Hub erstellen und hosten. Daher müssen die meisten Anwendungen und Linux-Distributionen, die Sie zum Ausführen von Docker-Containern benötigen, Images in Docker Hub haben.
Geben Sie Folgendes ein, um zu überprüfen, ob Sie über Docker Hub auf Bilder zugreifen und diese herunterladen können:
docker run hello-world
In der Ausgabe sollte die folgende Meldung angezeigt werden, die angibt, dass Docker ordnungsgemäß funktioniert:
Output...
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
Sie können nach Bildern suchen, die in Docker Hub verfügbar sind, indem Sie den Befehldocker
mit dem Unterbefehlsearch
verwenden. Um beispielsweise nach dem Ubuntu-Image zu suchen, geben Sie Folgendes ein:
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 ungefähr so aus:
Output
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
ubuntu Ubuntu is a Debian-based Linux operating sys… 8564 [OK]
dorowu/ubuntu-desktop-lxde-vnc Ubuntu with openssh-server and NoVNC 230 [OK]
rastasheep/ubuntu-sshd Dockerized SSH service, built on top of offi… 176 [OK]
consol/ubuntu-xfce-vnc Ubuntu container with "headless" VNC session… 129 [OK]
ansible/ubuntu14.04-ansible Ubuntu 14.04 LTS with ansible 95 [OK]
ubuntu-upstart Upstart is an event-based replacement for th… 91 [OK]
neurodebian NeuroDebian provides neuroscience research s… 54 [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5 ubuntu-16-nginx-php-phpmyadmin-mysql-5 48 [OK]
ubuntu-debootstrap debootstrap --variant=minbase --components=m… 39 [OK]
nuagebec/ubuntu Simple always updated Ubuntu docker images w… 23 [OK]
tutum/ubuntu Simple Ubuntu docker images with SSH access 18
i386/ubuntu Ubuntu is a Debian-based Linux operating sys… 14
1and1internet/ubuntu-16-apache-php-7.0 ubuntu-16-apache-php-7.0 13 [OK]
ppc64le/ubuntu Ubuntu is a Debian-based Linux operating sys… 12
eclipse/ubuntu_jdk8 Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, … 6 [OK]
1and1internet/ubuntu-16-nginx-php-5.6-wordpress-4 ubuntu-16-nginx-php-5.6-wordpress-4 6 [OK]
codenvy/ubuntu_jdk8 Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, … 4 [OK]
darksheer/ubuntu Base Ubuntu Image -- Updated hourly 4 [OK]
pivotaldata/ubuntu A quick freshening-up of the base Ubuntu doc… 2
1and1internet/ubuntu-16-sshd ubuntu-16-sshd 1 [OK]
smartentry/ubuntu ubuntu with smartentry 1 [OK]
ossobv/ubuntu Custom ubuntu image from scratch (based on o… 0
paasmule/bosh-tools-ubuntu Ubuntu based bosh-cli 0 [OK]
1and1internet/ubuntu-16-healthcheck ubuntu-16-healthcheck 0 [OK]
pivotaldata/ubuntu-gpdb-dev Ubuntu images for GPDB development 0
In der SpalteOFFICIAL gibtOK ein Image an, das von der Firma hinter dem Projekt erstellt und unterstützt wird. Sobald Sie das Bild identifiziert haben, das Sie verwenden möchten, können Sie es mit dem Unterbefehlpull
auf Ihren Computer herunterladen. Versuchen Sie dies mit dem Bild vonubuntu
wie folgt:
docker pull ubuntu
Nachdem ein Bild heruntergeladen wurde, können Sie einen Container mit dem heruntergeladenen Bild mit dem Unterbefehlrun
ausführen. Wenn ein Image nicht heruntergeladen wurde, währenddocker
mit dem Unterbefehlrun
ausgeführt wird, lädt der Docker-Client das Image zuerst herunter und führt dann einen Container damit aus:
docker run ubuntu
Geben Sie Folgendes ein, um die auf Ihren Computer heruntergeladenen Bilder anzuzeigen:
docker images
Die Ausgabe sollte ungefähr so aussehen:
OutputREPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest ea4c82dcd15a 16 hours ago 85.8MB
hello-world latest 4ab4c602aa5e 5 weeks ago 1.84kB
Wie Sie später in diesem Lernprogramm sehen werden, können Bilder, die Sie zum Ausführen von Containern verwenden, geändert und zum Generieren neuer Bilder verwendet werden. Diese können dann in Docker Hub oder andere Docker-Register hochgeladen werden (pushed ist der Fachbegriff) .
[[Schritt 5 - Ausführen eines Docker-Containers]] == Schritt 5 - Ausführen eines Docker-Containers
Derhello-world
-Container, den Sie im vorherigen Schritt ausgeführt haben, ist ein Beispiel für einen Container, der nach dem Ausgeben einer Testnachricht ausgeführt und beendet wird. Container können viel nützlicher und interaktiver sein. Schließlich ähneln sie virtuellen Maschinen und sind nur ressourcenschonender.
Lassen Sie uns als Beispiel einen Container mit dem neuesten Ubuntu-Image ausführen. Durch die Kombination der Schalter-i und-t erhalten Sie interaktiven Shell-Zugriff auf den Container:
docker run -it ubuntu
[.note] #Note: Das Standardverhalten für den Befehlrun
besteht darin, einen neuen Container zu starten. Sobald Sie den vorhergehenden Befehl ausgeführt haben, öffnen Sie die Shell-Schnittstelle eines zweitenubuntu
-Containers.
#
Ihre Eingabeaufforderung sollte sich ändern, um der Tatsache Rechnung zu tragen, dass Sie jetzt im Container arbeiten, und sollte die folgende Form annehmen:
Outputroot@9b0db8a30ad1:/#
[.note] #Note: Merken Sie sich die Container-ID an der Eingabeaufforderung. Im vorhergehenden Beispiel ist es9b0db8a30ad1
. Sie benötigen diese Container-ID später, um den Container zu identifizieren, wenn Sie ihn entfernen möchten.
#
Jetzt können Sie einen beliebigen Befehl im Container ausführen. Beispiel: Aktualisieren Sie die Paketdatenbank im Container. Sie müssen keinem Befehlsudo
voranstellen, da Sie im Container als Benutzer vonrootarbeiten:
apt-get update
Installieren Sie dann eine beliebige Anwendung darin. Installieren wir Node.js:
apt-get install -y nodejs
Dadurch wird Node.js im Container aus dem offiziellen Ubuntu-Repository installiert. Stellen Sie nach Abschluss der Installation sicher, dass Node.js installiert ist:
node -v
Die Versionsnummer wird in Ihrem Terminal angezeigt:
Outputv8.10.0
Alle Änderungen, die Sie im Container vornehmen, gelten nur für diesen Container.
Geben Sie zum Verlassen des Containers an der Eingabeaufforderungexit
ein.
Schauen wir uns als nächstes die Verwaltung der Container auf unserem System an.
[[Schritt-6 - Verwalten von Docker-Containern]] == Schritt 6 - Verwalten von Docker-Containern
Nach einer Weile der Verwendung von Docker befinden sich viele aktive (aktive) und inaktive Container auf Ihrem Computer. Verwenden Sie zum Anzeigen deractive ones:
docker ps
Sie sehen eine Ausgabe ähnlich der folgenden:
OutputCONTAINER ID IMAGE COMMAND CREATED
In diesem Tutorial haben Sie drei Container gestartet. eine aus dem Bild vonhello-world
und zwei aus dem Bild vonubuntu
. Diese Container werden nicht mehr ausgeführt, befinden sich jedoch noch auf Ihrem System.
Um alle Container anzuzeigen - aktiv und inaktiv - führen Siedocker ps
mit dem Schalter-a
aus:
docker ps -a
Es wird eine Ausgabe ähnlich der folgenden angezeigt:
OutputCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9b0db8a30ad1 ubuntu "/bin/bash" 21 minutes ago Exited (0) About a minute ago xenodochial_neumann
d7851eb12e23 ubuntu "/bin/bash" 24 minutes ago Exited (0) 24 minutes ago boring_chebyshev
d54945b6510b hello-world "/hello" 32 minutes ago Exited (0) 32 minutes ago youthful_roentgen
Um den zuletzt erstellten Container anzuzeigen, übergeben Sie ihm den Schalter-l
:
docker ps -l
OutputCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9b0db8a30ad1 ubuntu "/bin/bash" 22 minutes ago Exited (127) About a minute ago xenodochial_neumann
Verwenden Sie zum Starten eines gestoppten Containersdocker start
, gefolgt von der Container-ID oder dem Namen des Containers. Starten wir den Ubuntu-basierten Container mit der ID9b0db8a30ad1
:
docker start 9b0db8a30ad1
Der Container wird gestartet und Sie könnendocker ps
verwenden, um seinen Status anzuzeigen:
OutputCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9b0db8a30ad1 ubuntu "/bin/bash" 23 minutes ago Up 11 seconds xenodochial_neumann
Verwenden Siedocker stop
, gefolgt von der Container-ID oder dem Namen, um einen laufenden Container zu stoppen. Dieses Mal verwenden wir den Namen, den Docker dem Container zugewiesen hat:xenodochial_neumann
:
docker stop xenodochial_neumann
Wenn Sie entschieden haben, dass Sie keinen Container mehr benötigen, entfernen Sie ihn mit dem Befehldocker rm
und verwenden Sie erneut entweder die Container-ID oder den Namen. Verwenden Sie den Befehldocker ps -a
, um die Container-ID oder den Namen für den Container zu ermitteln, der dem Image vonhello-world
zugeordnet ist, und entfernen Sie ihn.
docker rm youthful_roentgen
Sie können einen neuen Container starten und ihm mit dem Schalter--name
einen Namen geben. Sie können auch den Schalter--rm
verwenden, um einen Container zu erstellen, der sich selbst entfernt, wenn er gestoppt wird. Weitere Informationen zu diesen und anderen Optionen finden Sie im Befehldocker run help
.
Container können in Bilder umgewandelt werden, mit denen Sie neue Container erstellen können. Schauen wir uns an, wie das funktioniert.
[[Schritt-7 - Übernehmen von Änderungen in einem Container in ein Docker-Image] == Schritt 7 - Übernehmen von Änderungen in einem Container in ein Docker-Image
Wenn Sie ein Docker-Image starten, können Sie wie bei einer virtuellen Maschine Dateien erstellen, ändern und löschen. Die von Ihnen vorgenommenen Änderungen gelten nur für diesen Container. Sie können es starten und stoppen, aber sobald Sie es mit dem Befehldocker rm
zerstören, gehen die Änderungen endgültig verloren.
In diesem Abschnitt erfahren Sie, wie Sie den Status eines Containers als neues Docker-Image speichern.
Nach der Installation von Node.js im Ubuntu-Container wird jetzt ein Container von einem Image ausgeführt, der sich jedoch von dem Image unterscheidet, das Sie zum Erstellen verwendet haben. Möglicherweise möchten Sie diesen Container "Node.js" später als Grundlage für neue Bilder verwenden.
Übernehmen Sie dazu die Änderungen in eine neue Docker-Image-Instanz mit der folgenden Befehlsstruktur:
docker commit -m "What did you do to the image" -a "Author Name" container-id repository/new_image_name
Der Schalter-m steht für die Festschreibungsnachricht, mit der Sie und andere wissen, welche Änderungen Sie vorgenommen haben, während-a zur Angabe des Autors verwendet wird. Dascontainer ID
ist dasjenige, das Sie zuvor im Lernprogramm notiert haben, als Sie die interaktive Docker-Sitzung gestartet haben. Sofern Sie keine zusätzlichen Repositorys in Docker Hub erstellt haben, ist das Repository in der Regel Ihr Docker Hub-Benutzername.
Für den Benutzersammy mit der Container-IDd9b100f2f636
lautet der Befehl beispielsweise:
docker commit -m "added node.js" -a "sammy" d9b100f2f636 sammy/ubuntu-nodejs
[.note] #Note: Wenn Siecommitein Bild erstellen, wird das neue Bild lokal, dh auf Ihrem Computer, gespeichert. Später in diesem Lernprogramm erfahren Sie, wie Sie ein Image in eine Docker-Registrierung wie Docker Hub übertragen, damit es von Ihnen und anderen bewertet und verwendet werden kann.
#
Nach Abschluss dieses Vorgangs sollte in der Liste der Docker-Images, die sich jetzt auf Ihrem Computer befinden, das neue Image sowie das alte Image angezeigt werden, von dem es abgeleitet wurde:
docker images
Die Ausgabe sollte ungefähr so aussehen:
OutputREPOSITORY TAG IMAGE ID CREATED SIZE
sammy/ubuntu-nodejs latest 6a1784a63edf 2 minutes ago 170MB
ubuntu latest ea4c82dcd15a 17 hours ago 85.8MB
hello-world latest 4ab4c602aa5e 5 weeks ago 1.84kB
Im obigen Beispiel istubuntu-nodejs das neue Image, das aus dem vorhandenen Ubuntu-Image von Docker Hub abgeleitet wurde. Der Größenunterschied spiegelt die vorgenommenen Änderungen wider. In diesem Beispiel wurde Node.js installiert. Wenn Sie das nächste Mal einen Container mit Ubuntu ausführen müssen, auf dem Node.js vorinstalliert ist, können Sie einfach das neue Image verwenden.
Sie können auch Images ausDockerfile
erstellen, wodurch Sie die Installation von Software in einem neuen Image automatisieren können. Dies liegt jedoch außerhalb des Rahmens dieses Lernprogramms.
Lassen Sie uns nun das neue Image für andere freigeben, damit sie daraus Container erstellen können.
[[Schritt 8 - - Docker-Images in ein Docker-Repository verschieben]] == Schritt 8 - Docker-Images in ein Docker-Repository verschieben
Der nächste logische Schritt nach dem Erstellen eines neuen Images aus einem vorhandenen Image besteht darin, es für einige Ihrer Freunde, die ganze Welt in Docker Hub oder eine andere Docker-Registrierung, auf die Sie Zugriff haben, freizugeben. Um ein Image an Docker Hub oder eine andere Docker-Registrierung zu senden, müssen Sie dort über ein Konto verfügen.
In diesem Abschnitt erfahren Sie, wie Sie ein Docker-Image in Docker Hub übertragen. InHow To Set Up a Private Docker Registry on Ubuntu 14.04 erfahren Sie, wie Sie Ihre eigene private Docker-Registrierung erstellen.
Melden Sie sich zuerst bei Docker Hub an, um Ihr Image zu übertragen:
docker login -u docker-registry-username
Sie werden aufgefordert, sich mit Ihrem Docker Hub-Passwort zu authentifizieren. Wenn Sie das richtige Kennwort angegeben haben, sollte die Authentifizierung erfolgreich sein.
[.Hinweis]##
Note: Wenn sich Ihr Docker-Registrierungsbenutzername von dem lokalen Benutzernamen unterscheidet, den Sie zum Erstellen des Bildes verwendet haben, müssen Sie Ihr Bild mit Ihrem Registrierungsbenutzernamen versehen. Für das Beispiel im letzten Schritt würden Sie Folgendes eingeben:
docker tag sammy/ubuntu-nodejs docker-registry-username/ubuntu-nodejs
Dann können Sie Ihr eigenes Bild mit den folgenden Optionen verschieben:
docker push docker-registry-username/ubuntu-nodejs
Um das Image vonubuntu-nodejs
in das Repository vonsammyzu verschieben, lautet der Befehl:
docker push sammy/ubuntu-nodejs
Der Vorgang kann einige Zeit in Anspruch nehmen, da die Bilder hochgeladen werden. Nach Abschluss sieht die Ausgabe jedoch folgendermaßen aus:
OutputThe push refers to repository [docker.io/sammy/ubuntu-nodejs]
1aa927602b6a: Pushed
76c033092e10: Pushed
2146d867acf3: Pushed
ae1f631f14b7: Pushed
102645f1cf72: Pushed
latest: digest: sha256:2be90a210910f60f74f433350185feadbbdaca0d050d97181bf593dd85195f06 size: 1362
Nachdem Sie ein Bild in eine Registrierung verschoben haben, sollte es im Dashboard Ihres Kontos aufgeführt sein, wie im folgenden Bild dargestellt.
Wenn ein Push-Versuch zu folgendem Fehler führt, sind Sie 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 an und wiederholen Sie den Push-Versuch.
Fazit
In diesem Tutorial haben Sie die Grundlagen für den Einstieg in die Arbeit mit Docker unter Ubuntu 16.04 kennengelernt. Wie die meisten Open Source-Projekte basiert Docker auf einer sich schnell entwickelnden Codebasis. Machen Sie es sich also zur Gewohnheit, dieblog pagedes Projekts zu besuchen, um die neuesten Informationen zu erhalten.
Weitere Informationen finden Sie inother Docker tutorialsin der DigitalOcean-Community.