Docker-swarm from the scratch: Unterschied zwischen den Versionen
| Zeile 5: | Zeile 5: | ||
[[Datei:docker-container-zu-linux.png]] | [[Datei:docker-container-zu-linux.png]] | ||
*Links ein Linux System und rechts der Aufbau und die Abschirmung anderer Prozesse durch Docker. | *Links ein Linux System und rechts der Aufbau und die Abschirmung anderer Prozesse durch Docker. | ||
| − | =Docker | + | |
| + | |||
| + | =Docker Swarm= | ||
Der Docker Swarm basiert auf einer Master-Slave-Architektur. Der Docker Swarm besteht aus einem Manager und mehreren Arbeiter Maschinen. Der '''Swarm-Manager''' ist für die Verwaltung und Delegation der Aufgaben verantwortlich. Die '''Swarm-Worker''' sind für die Ausführung der Tasks zuständig. Ein großer Hauptpunkt für den Swarm ist das Load-Balancing. Dieses ist bereits bei der Installation integriert und sorgt für eine gute Lastenverteilung. | Der Docker Swarm basiert auf einer Master-Slave-Architektur. Der Docker Swarm besteht aus einem Manager und mehreren Arbeiter Maschinen. Der '''Swarm-Manager''' ist für die Verwaltung und Delegation der Aufgaben verantwortlich. Die '''Swarm-Worker''' sind für die Ausführung der Tasks zuständig. Ein großer Hauptpunkt für den Swarm ist das Load-Balancing. Dieses ist bereits bei der Installation integriert und sorgt für eine gute Lastenverteilung. | ||
| − | =Docker | + | =Docker Compose= |
| + | |||
Mithilfe Docker-Compose lassen sich die Container einfacher Verwalten. Docker-Compose bringt einige Kommandos mit sich und liefert durch die '''docker-compose.yml''' , praktisch das Herzstück des Docker-Compose, eine Datei mit der bestimmt wird wie die Container Starten sollen und wie sie untereinander verknüpft sind. Außerdem können Verzeichnisse, Ports freigegeben und Verlinkungen hergestellt werden und noch einiges mehr. | Mithilfe Docker-Compose lassen sich die Container einfacher Verwalten. Docker-Compose bringt einige Kommandos mit sich und liefert durch die '''docker-compose.yml''' , praktisch das Herzstück des Docker-Compose, eine Datei mit der bestimmt wird wie die Container Starten sollen und wie sie untereinander verknüpft sind. Außerdem können Verzeichnisse, Ports freigegeben und Verlinkungen hergestellt werden und noch einiges mehr. | ||
| Zeile 26: | Zeile 29: | ||
- ./bind9:/data # Change volume path | - ./bind9:/data # Change volume path | ||
</pre> | </pre> | ||
| + | |||
| + | |||
| + | =Docker Swarm Installieren= | ||
| + | |||
| + | *apt update | ||
| + | *apt upgrade | ||
| + | *curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - | ||
| + | *add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | ||
| + | *apt update | ||
| + | *apt-get install -y docker-ce docker-compose | ||
| + | *systemctl start docker | ||
| + | *systemctl enable docker | ||
| + | |||
| + | =Docker Compose Befehle= | ||
| + | *docker-compose up -d | ||
| + | **''Die docker-compose.yaml wird im Hintergrund gestartet und somit der Container'' | ||
| + | |||
| + | *docker-compose ps | ||
| + | **''listet die aktiven Container auf'' | ||
| + | |||
| + | *docker-compose stop/start '''name''' | ||
| + | **''stoppt den Container ohne ihn zu removen oder startet ihn wieder'' | ||
| + | |||
| + | *docker-compose exec SERVICENAME /bin/sh | ||
| + | **''für interaktive shell'' | ||
| + | |||
| + | *docker-compose logs | ||
| + | **''logs werden zu einem Container mitverfolgt wenn er mit '''docker-compose up -d''' gestartet wurde'' | ||
Version vom 24. März 2021, 10:27 Uhr
Was ist Docker?
Docker ist eine Containervirtualisierung. Durch Docker können mehrere Prozesse isoliert und damit unabhängig voneinander ausgeführt werden. Dies ermöglicht eine einfache Reparatur und Aktualisierung des Containers ohne andere Container zu gefährden.
- Links ein Linux System und rechts der Aufbau und die Abschirmung anderer Prozesse durch Docker.
Docker Swarm
Der Docker Swarm basiert auf einer Master-Slave-Architektur. Der Docker Swarm besteht aus einem Manager und mehreren Arbeiter Maschinen. Der Swarm-Manager ist für die Verwaltung und Delegation der Aufgaben verantwortlich. Die Swarm-Worker sind für die Ausführung der Tasks zuständig. Ein großer Hauptpunkt für den Swarm ist das Load-Balancing. Dieses ist bereits bei der Installation integriert und sorgt für eine gute Lastenverteilung.
Docker Compose
Mithilfe Docker-Compose lassen sich die Container einfacher Verwalten. Docker-Compose bringt einige Kommandos mit sich und liefert durch die docker-compose.yml , praktisch das Herzstück des Docker-Compose, eine Datei mit der bestimmt wird wie die Container Starten sollen und wie sie untereinander verknüpft sind. Außerdem können Verzeichnisse, Ports freigegeben und Verlinkungen hergestellt werden und noch einiges mehr.
- Beispiel einer docker-compose.yml für bind9
version: '3.5'
services:
bind9:
restart: always
image: labbsr0x/dns-bind9
ports:
- "53:53/udp"
- "53:53/tcp"
volumes:
- ./bind9:/data # Change volume path
Docker Swarm Installieren
- apt update
- apt upgrade
- curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- apt update
- apt-get install -y docker-ce docker-compose
- systemctl start docker
- systemctl enable docker
Docker Compose Befehle
- docker-compose up -d
- Die docker-compose.yaml wird im Hintergrund gestartet und somit der Container
- docker-compose ps
- listet die aktiven Container auf
- docker-compose stop/start name
- stoppt den Container ohne ihn zu removen oder startet ihn wieder
- docker-compose exec SERVICENAME /bin/sh
- für interaktive shell
- docker-compose logs
- logs werden zu einem Container mitverfolgt wenn er mit docker-compose up -d gestartet wurde
