Docker

Docker: was ist das?

Docker ermöglicht es bestimmte Services oder Dienste als Container zu starten. Ein Container besteht aus bestimmten Software-Images, welche aus dem Internet geladen und vom Betriebssystem und voneinander isoliert gestartet werden können.

Für die Netzwerkkommunikation mit dem Container können bestimmte Netzwerk Ports außerhalb des Containers zur Verfügung gestellt werden. Bestimmte Ordner innerhalb des Containers können in das Host-Betriebssystem umgeleitet werden, um die Daten persistent zu machen. (Damit diese bei einem erneuten Provisionieren des Containers nicht verloren gehen)

Als Beispiel könnte ein Docker-Container für das Bereitstellen einer Datenbank die Datenbankfiles und deren Konfiguration in das lokale Dateisystem schreiben. Die eigentliche Datenbank läuft dabei nach dem Download der Software-Images isoliert im Container und ist von außen über einen Netzwerk Port erreichbar, z.B. „localhost:1433“. Die Daten der Datenbank liegen im lokalen Dateisystem, die Software-Images können mit neuen Image-Versionen getauscht werden.


Voraussetzungen

Preview Docker-Container unter Linux starten: verwende Docker Engine
Linux / Server /

Docker-Container unter Linux starten: verwende Docker Engine

geändert: 04.10.2022 von Bernhard (Erstveröffentlichung: 04.11.2020)

Eine Anleitung für die Installation von Docker ist auf der Herstellerseite zu finden. Für Debian / Ubuntu habe ich die Installation wie folgt durchgeführt. ... weiterlesen

Preview Docker-Container unter Windows 10 starten: Docker Desktop
Windows / Installation /

Docker-Container unter Windows 10 starten: Docker Desktop

geändert: 22.08.2022 von Bernhard (Erstveröffentlichung: 20.08.2020)

Docker-Container können mittlerweile auch unter Windows betrieben werden, dazu ist im Wesentlichen nur die Installation des „Docker Desktop“ notwendig.  ... weiterlesen

Preview Traefik: Datenverkehr auf einen anderen Server weiterleiten
Home Server /

Traefik: Datenverkehr auf einen anderen Server weiterleiten

erstellt: 12.09.2022 von Bernhard

Als Vorbereitung für das Übersiedeln meiner Websites habe ich nach einer Möglichkeit gesucht den kompletten Datenverkehr vom alten Server einfach auf den neuen weiterzuleiten.  ... weiterlesen

Preview Webserver mit Docker Container umziehen, Theorie und Praxis
Home Server / Webhosting /

Webserver mit Docker Container umziehen, Theorie und Praxis

erstellt: 06.11.2022 von Bernhard

Wer einen virtuellen Server oder Cloud-Server mietet, muss diesen für ein neues Betriebssystem von Zeit zu Zeit austauschen. Spätestens, wenn für das Betriebssystem keine Updates mehr zur Verfügung gestellt werden, ist ein Serverwechsel unausweichlich. Vor einiger Zeit habe ich alle Websites auf Docker-Container umgestellt, was den Umzug beschleunigen soll. Zunächst etwas Theorie zu meinen Überlegungen, dann wie mein Serverumzug zuletzt vonstattenging. Zusätzli... ... weiterlesen

Preview Traefik und oAuth: Eigene Webservices mit Google anmelden.

Traefik und oAuth: Eigene Webservices mit Google anmelden.

erstellt: 13.02.2023 von Bernhard

Die Sicherheit eines Webservice ist wesentlich von dessen Benutzeranmeldung abhängig. Sollte ein Webservice keine eigene Benutzeranmeldung besitzen, kann beim Einsatz des Traefik-Reverse Proxy einfach eine Anmeldung vorgeschaltet werden. Der Zugriff auf das eigentliche Webservice wird damit erst erlaubt, wenn die Anmeldung am Reverse Proxy erfolgreich war. Die einfachste Variante für eine vorgeschaltete Anmeldung ist eine Basic-Authentifizierung. Etwas aufwändiger, aber... ... weiterlesen

Docker Befehle, Funktion und Betrieb

Preview Docker-Befehle in der Praxis

Docker-Befehle in der Praxis

geändert: 29.08.2022 von Bernhard (Erstveröffentlichung: 20.08.2020)

Docker Container können mittels Terminal-Befehle gestartet, upgedatet und verwaltet werden. In dem Beitrag notiere ich Befehle, die ich bisher für Docker benötigt habe und entsprechende Beispiele dazu: ... weiterlesen

Preview Docker Daten speichern: Docker Volumes vs. Host-Ordner

Docker Daten speichern: Docker Volumes vs. Host-Ordner

erstellt: 26.12.2022 von Bernhard

Ich betreibe eine handvoll Docker Container auf einem einzelnen Linux-Host. Docker-Container werden bei einem erneuten erstellen oder beim Austausch auf eine neuere Imageversion bekanntlich ausgetauscht und verlieren dabei alle geänderten Daten. Um bestimmte Ordner eines Containers permanent zu speichern, müssen diese über Volumes oder Bind-Mounts ausgelagert werden. Ich habe dazu meist bestimmte Pfade der Container in definierten Ordnern am Host verbunden (Bind-Mounts). Mit ein Grund für die Ve... ... weiterlesen

Praxis: Backup Docker Container-Daten: Volumes / Bind Mounts

Praxis: Backup Docker Container-Daten: Volumes / Bind Mounts

erstellt: 26.12.2022 von Bernhard

In meinem Artikel „Alle Docker-Container: Host übersiedeln, Theorie und Praxis“, bin ich bereits ein klein wenig auf das Thema Backup eingegangen. Wer den Artikel verfolgt hat, weiß, dass ich die Daten meiner Docker-Container über Bind-Mounts auslagere und mit rsync sichere. Gestartet wird der Backup-Job über crontab. Doch zunächst habe ich mir Gedanken gemacht, was beim Einsatz von Docker in einem Single-Server-Setup eigentlich gesichert werden muss: ... weiterlesen

Preview Docker Compose vs. Docker Swarm: verwenden und verstehen

Docker Compose vs. Docker Swarm: verwenden und verstehen

erstellt: 28.12.2022 von Bernhard

Mit Docker Swarm können Nodes (Hosts) zu einem gemeinsamen Verbund zusammengefasst werden. Dies ermöglicht es Container in einer beliebigen Anzahl von Instanzen auf einer beliebigen Anzahl von Knoten (Hosts) im Netzwerk zu betrieben. Die Basis für die Kommunikation zwischen den Hosts bildet in Docker Swarm ein Overlay-Netzwerk für die Services: Multi-host networking. Wie in meinem Artikel zum Webserverumzug bereits angedeutet, habe ich Docker Swarm als mögliche Option f&... ... weiterlesen

Preview Docker Swarm, Portainer und Traefik kombiniert

Docker Swarm, Portainer und Traefik kombiniert

erstellt: 02.01.2023 von Bernhard

Wie bereits mehrfach auf dieser Seite erwähnt, verwende ich für den Zugriff auf meine Docker-Container primär den Reverse-Proxy Traefik. Um die Container in einer grafischen GUI verwalten zu können, habe ich zusätzlich Portainer im Einsatz. Für einen Single-Server passt das Setup so weit, wer aber mehrere Server einsetzen will, kann dazu Docker-Swarm verwenden. Ich habe dazu zunächst Portainer in Kombination mit Swarm getestet und das Setup um Traefik inklusive... ... weiterlesen

Preview Docker vs. Plesk, eine Alternative für den Betrieb von Websites
Home Server / Webhosting /

Docker vs. Plesk, eine Alternative für den Betrieb von Websites

geändert: 10.08.2022 von Bernhard (Erstveröffentlichung: 08.03.2021)

Jahrelang habe ich meine Websiten auf einem vServer von Host Europe betrieben und diese mithilfe von Plesk verwaltet. Obwohl Plesk immer gute Dienste geleistet hat, speziell beim Wechsel von einem Server zum Anderen, war die Umgebung am neuen Server dennoch nie gleich. Am neuen Server gab es immer wieder etwas zum Nacharbeiten und sei es nur das Installieren aller benötigten Software-Pakete. ... weiterlesen

Laravel in Docker betreiben: eigenes Dockerfile erstellen

Laravel in Docker betreiben: eigenes Dockerfile erstellen

geändert: 26.12.2022 von Bernhard (Erstveröffentlichung: 14.03.2019)

Nachdem die meisten Laravel-Docker-Container entweder mittels des PHP-eigenen Webserver betrieben werden und Laradock nicht so ganz zu meiner Nextcloud-Docker-Umgebung gepasst hatte, hab ich mir den Applikationscontainer selbst gebaut. Mit ein Grund war die Anforderung Python in das Paket zu integrieren. ... weiterlesen

Laradock als Laravel Entwicklungsumgebung

Laradock als Laravel Entwicklungsumgebung

geändert: 11.04.2020 von Bernhard (Erstveröffentlichung: 07.05.2019)

 Mit Laradock einfach eine Laravel Entwicklungsumgebung starten ... weiterlesen

Translation English

Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu Mehr Details