Docker auf Linux ermöglicht es Ihnen, Containerisierungstechnologien zur effizienten Verpackung, Verteilung und Ausführung von Anwendungen zu nutzen. Diese Anleitung behandelt die wesentlichen Schritte zur Installation von Docker, Arbeit mit Containern und Images sowie zum Erstellen eigener benutzerdefinierter Docker-Images.

Wie Sie beginnen

  1. Schritt 1: Installieren des Docker Engines

    Docker Engine ist für verschiedene Linux-Distributionen verfügbar. Installieren Sie es mit dem Paketmanager Ihrer Distribution.

    Für Debian/Ubuntu-basierte Systeme:

    sudo apt update
    sudo apt install docker.io

    Für Fedora/RHEL-basierte Systeme:

    sudo yum install docker
  2. Schritt 2: Starten und Aktivieren des Docker-Dienstes

    Nach der Installation starten Sie den Docker-Dienst und aktivieren ihn für den Bootvorgang:

    sudo systemctl start docker
    sudo systemctl enable docker
  3. Schritt 3: Überprüfen der Installation

    Überprüfen Sie die Docker-Version, um sicherzustellen, dass sie korrekt installiert ist:

    docker --version
  4. Schritt 4: Abrufen von Docker-Images

    Docker-Images sind Vorlagen für Container. Sie können Images aus Docker Hub, einem öffentlichen Repository von Docker-Images, oder anderen Image-Registries abrufen.

    Um das offizielle Ubuntu-Image zu beziehen:

    docker pull ubuntu
  5. Schritt 5: Ausführen Ihres ersten Containers

    Starten Sie einen Container aus einem Docker-Image mit dem Befehl docker run. Um einen einfachen Ubuntu-Container zu starten:

    docker run -it ubuntu

    Dieser Befehl startet eine interaktive Terminalsession (-it) in einem Ubuntu-Container. Sobald Sie sich darin befinden, können Sie verschiedene Operationen durchführen, wie z.B. die Installation von Software, das Ausführen von Befehlen und das Ändern von Dateien. Um den Container ohne ihn zu beenden zu verlassen, verwenden Sie den exit-Befehl.

  6. Schritt 6: Auflisten laufender Container

    Anzeigen der Liste laufender Container mit dem Befehl docker ps. Um alle Container (einschließlich beendeter) anzuzeigen, fügen Sie das Flag -a hinzu:

    docker ps
    docker ps -a
  7. Schritt 7: Beenden und Entfernen von Containern

    Beenden Sie einen laufenden Container mit seiner ID oder seinem Namen:

    docker stop <container_id_or_name>

    Entfernen Sie einen beendeten Container:

    docker rm <container_id_or_name>
  8. Schritt 8: Erstellen einer Dockerfile

    Dockerfiles sind Textdateien, die Anweisungen für das Erstellen von Docker-Images enthalten. Sie können benutzerdefinierte Docker-Images erstellen, indem Sie Dockerfiles schreiben.

    Erstellen Sie zunächst ein neues Verzeichnis und eine Dockerfile darin. Hier ist ein einfaches Beispiel einer Dockerfile für eine Node.js-Anwendung:

    FROM node:latest
    WORKDIR /app
    COPY . .
    RUN npm install
    CMD ["node", "app.js"]
  9. Schritt 9: Erstellen benutzerdefinierter Images

    Erstellen Sie ein Docker-Image mit dem Befehl docker build. Navigieren Sie zum Verzeichnis, das die Dockerfile enthält, und führen Sie aus:

    docker build -t my-node-app .

    Dieser Befehl erstellt ein Image namens my-node-app, indem er die Dockerfile im aktuellen Verzeichnis (.) verwendet.

  10. Schritt 10: Ausführen von Containern aus benutzerdefinierten Images

    Nachdem Sie ein benutzerdefiniertes Image erstellt haben, können Sie Container daraus starten, genau wie mit vorgefertigten Images:

    docker run -d my-node-app
  11. Schritt 11: Veröffentlichen von Images auf Docker Hub (optional)

    Falls Sie ein nützliches Docker-Image erstellt haben, können Sie es auf Docker Hub oder einem anderen Image-Repository veröffentlichen, um es mit anderen zu teilen:

    docker login
    docker tag my-node-app username/my-node-app
    docker push username/my-node-app
  12. Schritt 12: Erkunden von Docker Compose (optional)

    Docker Compose ist ein Tool zur Definition und Ausführung von Multi-Container-Docker-Anwendungen. Es verwendet YAML-Dateien, um die Dienste und Abhängigkeiten der Anwendung zu konfigurieren. Installieren Sie Docker Compose und verwenden Sie es, um komplexe Multi-Container-Einrichtungen zu verwalten.