Linux-Serververwaltung: Wie verwende ich Docker für eine schnelle Bereitstellung und Erweiterung?
Einführung:
Mit der Entwicklung der Cloud-Computing- und Containerisierungstechnologie ist Docker als leichtes Virtualisierungstool zur ersten Wahl vieler Entwickler sowie des Betriebs- und Wartungspersonals geworden. In diesem Artikel wird erläutert, wie Sie Docker für die schnelle Bereitstellung und Erweiterung auf Linux-Servern verwenden, um die Betriebseffizienz und Skalierbarkeit von Anwendungen zu verbessern.
Schritt eins: Serverpakete aktualisieren
$ sudo apt-get update
Schritt zwei: Docker-Abhängigkeiten installieren
$ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
Schritt drei: Offiziellen Docker-GPG-Schlüssel hinzufügen
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Schritt vier: Docker-Repository hinzufügen
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Schritt Fünftens: Aktualisieren Sie den Paketindex und installieren Sie Docker
$ sudo apt-get update $ sudo apt-get install docker-ce
# 使用基础镜像 FROM ubuntu:latest # 设置作者信息 MAINTAINER Your Name <your@email.com> # 安装相关依赖 RUN apt-get update && apt-get install -y python3 python3-pip # 设置工作目录 WORKDIR /app # 将应用程序添加到镜像中 COPY . /app # 安装应用程序依赖 RUN pip3 install -r requirements.txt # 设置容器启动命令 CMD ["python3", "app.py"]
Im obigen Beispiel haben wir ein aktuelles Ubuntu-Image als Basis-Image verwendet. Anschließend haben wir Python3 und die pip3-Tools installiert und den Anwendungsordner in das Image kopiert. Als Nächstes installieren wir die Abhängigkeiten der Anwendung und legen den Container-Startbefehl fest, um die Datei app.py auszuführen.
$ docker build -t myapp:latest .
Der obige Befehl erstellt ein Image mit dem Namen myapp basierend auf der Definition in der Docker-Datei und markiert es als neueste Version.
$ docker run -d -p 80:5000 myapp:latest
Der obige Befehl startet einen Container, der im Hintergrundmodus ausgeführt wird, und ordnet den Port 80 des Hosts dem Port 5000 des Containers zu. Auf diese Weise können wir über den Browser auf Port 80 des Hosts auf die Anwendung zugreifen.
Zuerst müssen wir Docker Compose verwenden, um die gesamte Architektur der Anwendung zu definieren. Erstellen Sie eine Datei mit dem Namen docker-compose.yml und fügen Sie den folgenden Inhalt hinzu:
version: '3' services: app: build: context: . dockerfile: Dockerfile image: myapp:latest ports: - "80:5000" load_balancer: image: nginx:latest ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/conf.d/default.conf:ro depends_on: - app
Im obigen Beispiel haben wir zwei Dienste definiert: app und load_balancer. Der App-Dienst erstellt das Image basierend auf der Docker-Datei im aktuellen Verzeichnis und ordnet den 5000-Port des Containers dem Port 80 des Hosts zu. Der Dienst „load_balancer“ verwendet das Nginx-Image und ordnet Port 80 des Hosts Port 80 des Containers zu.
Als nächstes müssen wir eine Konfigurationsdatei namens nginx.conf erstellen und den folgenden Inhalt hinzufügen:
upstream app_servers { server app:5000; } server { listen 80; location / { proxy_pass http://app_servers; } }
Die obige Konfigurationsdatei definiert einen Upstream mit dem Namen app_servers und verwendet Proxy_pass, um Anforderungen an den App-Dienst weiterzuleiten.
Verwenden Sie abschließend den folgenden Befehl, um mehrere Instanzen der Anwendung auszuführen:
$ docker-compose up --scale app=3
Der obige Befehl führt 3 App-Container-Instanzen aus und verwendet Nginx als Load Balancer für die Verkehrsverteilung.
Fazit:
Durch die Verwendung von Docker können wir Anwendungen einfach und schnell bereitstellen und skalieren. Indem wir eine Docker-Datei schreiben, um Schritte zur Image-Erstellung zu definieren, den Befehl „docker run“ zum Ausführen von Containern verwenden und Docker Compose für die Verwaltung mehrerer Container verwenden, können wir Anwendungen effizienter verwalten und skalieren. Ich hoffe, dieser Artikel kann Ihnen dabei helfen, Docker zum Bereitstellen und Erweitern auf Linux-Servern zu verwenden.
Das obige ist der detaillierte Inhalt vonLinux-Serververwaltung: Wie nutzt man Docker für eine schnelle Bereitstellung und Skalierung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!