Bereitstellung hybrider Infrastrukturen

Stellen Sie einen modernen hybriden Stack mit Docker, MySQL, Nginx und Apache bereit. Sie werden Anwendungen containerisieren, Datenbanken verwalten und Reverse-Proxys konfigurieren, während Sie gleichzeitig Legacy-Dienste beibehalten.

DevOps EngineerDockerMySQLDevOps

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

Modernisierung ersetzt selten alle Dienste auf einmal. In diesem Challenge-Projekt betreibst du einen gemischten lokalen Stack: einen containerisierten Web-Piloten, eine Host-Datenbank, ein Nginx-Gateway und einen Apache-Legacy-Endpunkt, jeweils mit eigenem Port und Konfigurationsmodell.

Du bind-mountest Inhalte in Docker, begrenzt ein MariaDB-Konto auf eine Datenbank, leitest zu einer vorbereiteten internen Anwendung weiter und erhältst eine alte URL per Apache-.htaccess-Umleitung. So koordinierst du Container- und Host-Dienste ohne Portkonflikte.

Was du lernen wirst

  • Einen nginx:alpine-Container namens web-pilot mit Bind-Mount und Portabbildung 8080:80 ausführen
  • MariaDB installieren und starten, globaltech_data erstellen und app_user@localhost Zugriff darauf gewähren
  • Host-Nginx auf Port 80 konfigurieren, sodass / zum vorbereiteten Dienst 127.0.0.1:5000 weitergeleitet wird
  • Nginx-Konfiguration prüfen, Dienst neu laden und Backend-Inhalt über den öffentlichen Endpunkt bestätigen
  • Apache auf Port 8081 verschieben, Inhalte unter /legacy ausliefern und .htaccess-Overrides erlauben
  • Eine 301- oder 302-Weiterleitung von /old nach /legacy mit Apache-Regeln implementieren und prüfen

Für wen dieser Kurs geeignet ist

Dieses Projekt richtet sich an Linux- und DevOps-Lernende, die Docker, MariaDB, Nginx und Apache in ergebnisorientierten Challenges verbinden möchten.

Voraussetzungen: Vertrautheit mit Docker-Optionen und Bind-Mounts, Linux-Paketen und Diensten, einfachen SQL-Rechten, Webserver-Konfiguration, Ports und curl; Prüfprojekt.

Lernumgebung: Browserbasierter Linux-Host mit sudo, Docker, APT, MariaDB, Nginx, Apache, vorbereitetem Backend auf 5000 und lokalem Netzwerk; kein Cloud-Konto nötig.

Häufig gestellte Fragen

Bedeutet „hybrid“ hier Hybrid-Cloud oder mehrere Knoten?

Nein. Ein Docker-Workload und Host-Dienste laufen auf einer Labormaschine. Cloud-Ressourcen und mehrere Server werden nicht bereitgestellt.

Ist MariaDB mit den Webanwendungen verbunden?

Nein. Datenbank, lokaler Benutzer, Passwort und begrenzte Rechte werden unabhängig geprüft. Schemas, Tabellen, Migrationen und Anbindung fehlen.

Muss ich das Backend hinter Nginx bauen?

Nein. Eine simulierte Anwendung läuft bereits auf 127.0.0.1:5000; du konfigurierst Nginx auf 80, damit curl http://localhost sie erreicht.

Warum können Nginx und Apache gleichzeitig laufen?

Sie lauschen auf verschiedenen Ports: Nginx 80, Apache 8081, Docker-Pilot 8080. Die Umleitung /old muss zudem in .htaccess stehen.

Lehrer

labby
Labby
Labby is the LabEx teacher.