Servicemanagement in Netzen - Leischner

Praktikumsblatt 4 - Docker Webserver

 

Aufgabe 1 - Docker installieren

Entwickeln Sie ein eine Ansible-Rolle docker-ce, die Docker-CE und Docker-Compose installiert und den installierenden Benutzer in die Gruppe docker aufnimmt.

Testen Sie diese Rolle mit Ihrem Server serv-ss21 im Playbook pb-remoteserver-3.

Welche Version haben Sie von Docker-CE und von Docker-Compose installiert? Sind dies die aktuellen Versionen?

 

Aufgabe 2 - Kleiner Webserver

  1. Erstellen Sie in einem Subdirectory servmgmt-ss21/prak/pr04/miniserver einen kleinen, ganz einfachen Webserver miniserver, der sich mit "Hallo Service Management Sommersemester 2021. Mein Name ist ...." meldet.
    Anforderung: Der Webserver soll mit einer geeigneten Sprache (z.B. PHP, Node.js, Python) programmierbar sein.
  2. Testen Sie Ihren Webserver zunächst lokal auf Ihrem Linux-Desktop-System.
  3. Lassen Sie diesen Webserver miniserver_50421 in Docker auf Ihrem Laborserver an Port 50421 laufen. Wie ist Ihre Vorgehensweise hierbei?

    Die Portnummer 50421 ist folgendermaßen strukturiert:

    • 5 steht für die Lehrveranstaltung Servicesmanagement in Netzen,
    • 04 für Praktikumsblatt 4,
    • 2 für Aufgabe 2 auf diesem Praktikumsblatt,
    • 1 ist die Nummer des Containers in der Aufgabe.
  4. Geben Sie den Dockerfile für Ihren Webserver an und erklären Sie ihn.
  5. Wie läuft das Deployment Ihrer Anwendung ab? Wie beurteilen Sie den Aufwanden für das Deployment? Diskutieren Sie Vorgehensweisen für den Test der Anwendung. Wie könnte das Deployment vereinfacht werden?

Meine Lösung:

 

Aufgabe 3 - netshoot

In dieser Aufgabe wollen wir uns mit dem hervorragenden Netzerk-Docker-Tool nicolaka/netshoot ein wenig vertraut machen.

Die folgenden Kommandos sind auf Ihrem Remote-Server serv-ss21 auszuführen. 

  1. Verbinden Sie sich interaktiv mit Hilfe des Container netshoot aus dem Image nicolaka/netshoot mit einem Interface des Containers miniserver_50321 . Welches Kommando verwenden Sie?
  2. Geben Sie nun mit ip a alle Interfaces des Containers miniserver_50321 sowie mit ip r die Routingtabelle aus. Geben Sie das Ergebnis an und interpretieren Sie es.
  3. Starten Sie den Container netshoot und gehen Sie mit einer interaktiven Shell in diesen Container. Welches Kommando verwenden Sie?
  4. Geben Sie nun mit ip a alle Interfaces des Containers netshoot sowie mit ip r die Routingtabelle aus. Geben Sie das Ergebnis an und interpretieren Sie es.
  5. Greifen Sie aus dem Containers netshoot heraus mit curl auf den miniserver_50321 zu. Welches Kommando verwenden Sie hierzu?
  6. Greifen Sie von außen (Ihrem Notebook) mit curl auf den miniserver_50321 zu. Welches Kommando verwenden Sie hierzu?
  7. Für welche Anwendungsfälle scheint Ihnen der Container netshoot besonders gut geeignet zu sein?

 

 

 

Impressum | Datenschutz | leischner.inf.h-brs.de, last modification: 12.09.2022-10.46