Einführung Der Dockerfile-Build-Ausführungsvorgang ist ein manueller Vorgang eines einzelnen Containers. Wenn eine Microservice-Architektur verwendet wird, müssen über 100 Container gestartet werden. Wie können die Abhängigkeiten zwischen ihnen aufrechterhalten werden? Drei Schritte:
Erste Erfahrung 1.Docker-Datei VON python:3.7-alpine ARBEITSVERZEICHNIS /code ENV FLASK_APP app.py Umgebung FLASK_RUN_HOST 0.0.0.0 Führen Sie den Befehl apk add --no-cache gcc musl-dev linux-headers aus. KOPIEREN requirements.txt requirements.txt Führen Sie den Befehl „pip install -r requirements.txt“ aus. KOPIEREN . . CMD ["Flasche", "ausführen"] 2.Dienstleistung Importzeit Redis importieren aus Flasche importieren Flasche App = Flask(__name__) Cache = Redis.Redis (Host = "Redis", Port = 6379) auf Grund von get_hit_count(): Wiederholungsversuche = 5 während True: versuchen: returniere cache.incr('Treffer') außer redis.exceptions.ConnectionError als exc: wenn Wiederholungen == 0: erhöhen exc Wiederholungen -= 1 Zeit.Schlaf(0,5) @app.route('/') def hallo(): Anzahl = Trefferanzahl abrufen() return 'Hallo Welt! Ich wurde {} Mal gesehen.\n'.format(Anzahl) docker-compose.yml Version: '3' Leistungen: Webseite: bauen: . Häfen: - "5000:5000" Bände: - .:/Code -logvolume01:/var/log Links: - Redis Redis: Bild: Redis Bände: logvolume01: {} Docker-Compose-Up - Entwicklerhandbuch für Windows Compose-demo_web_1 wird gestartet ... fertig Compose-demo_redis_1 wird gestartet ... fertig Anhängen an compose-demo_redis_1, compose-demo_web_1 redis_1 | 1:C 12. September 2020 07:34:09.654 # oO0OoO0OoO0Oo Redis wird gestartet oO0OoO0OoO0Oo redis_1 | 1:C 12. September 2020 07:34:09.655 # Redis-Version=6.0.7, Bits=64, Commit=00000000, geändert=0, PID=1, gerade gestartet redis_1 | 1:C 12. Sep. 2020 07:34:09.655 # Warnung: Keine Konfigurationsdatei angegeben, verwende die Standardkonfiguration. Um eine Konfigurationsdatei anzugeben, verwende redis-server /path/to/redis.conf redis_1 | 1:M 12. September 2020 07:34:09.657 * Ausführungsmodus=Standalone, Port=6379. redis_1 | 1:M 12. Sep. 2020 07:34:09.657 # WARNUNG: Die TCP-Backlog-Einstellung von 511 kann nicht erzwungen werden, da /proc/sys/net/core/somaxconn auf den niedrigeren Wert von 128 eingestellt ist. redis_1 | 1:M 12. September 2020 07:34:09.657 # Server initialisiert redis_1 | 1:M 12. Sep. 2020 07:34:09.658 # WARNUNG overcommit_memory ist auf 0 gesetzt! Das Speichern im Hintergrund kann bei zu wenig Arbeitsspeicher fehlschlagen. Um dieses Problem zu beheben, fügen Sie 'vm.overcommit_memory = 1' zu /etc/sysctl.conf hinzu und starten Sie dann neu oder führen Sie den Befehl 'sysctl vm.overcommit_memory=1' aus, damit dies wirksam wird. redis_1 | 1:M 12. September 2020 07:34:09.658 * RDB wird geladen, erstellt von Version 6.0.7 redis_1 | 1:M 12. September 2020 07:34:09.658 * RDB-Alter 156 Sekunden redis_1 | 1:M 12. September 2020 07:34:09.658 * RDB-Speichernutzung bei Erstellung 0,77 Mb redis_1 | 1:M 12. September 2020 07:34:09.658 * DB von Festplatte geladen: 0,000 Sekunden web_1 | * Bereitstellung der Flask-App „app.py“ web_1 | * Umgebung: Produktion web_1 | WARNUNG: Dies ist ein Entwicklungsserver. Verwenden Sie ihn nicht in einer Produktionsbereitstellung. web_1 | Verwenden Sie stattdessen einen Produktions-WSGI-Server. web_1 | * Debug-Modus: aus YML-Datei rulesversion: "1.0" #versionservices: #service listservice1: #Dienstkonfiguration container_name: #Containername depends_on: #Abhängigkeitsliste - depend1 -abhängig2 Bilder: #Spiegelbild1 - Bild2 build:. #Verzeichnis erstellen Netzwerk: #Netzwerk...... Dienst2:test2 ...... volumnes: #Verzeichnisliste einbinden networks: #Netzwerkliste configs: #Andere Konfigurationen Dies ist das Ende dieses Artikels über die Implementierung der Docker-Batchcontainer-Orchestrierung. Weitere relevante Inhalte zur Docker-Batchcontainer-Orchestrierung finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: MySQL: Praktische Erfahrung mit der Verwendung der Insert-Anweisung
>>: Die Scroll-Ansicht des WeChat-Applets realisiert die Verknüpfung nach links und rechts
1. Herunterladen Zunächst möchte ich einen inländ...
Heute muss das Unternehmensprojekt Docker konfigu...
1. CSS-Schreibformat 1. Inline-Stile Sie können C...
Im vorherigen Artikel haben wir die Netzwerkerken...
Als Backend-Programmierer haben Sie an vielen Ste...
Dieser Artikel zeichnet den detaillierten Install...
Diashows sieht man häufig auf Webseiten. Sie enth...
Dieser Artikel fasst einige einfache Prinzipien d...
brauchen: Identische Elemente eines Feldes zusamm...
Tabelle erstellen und Index erstellen Tabelle tbl...
Nach dem Drücken der Eingabetaste auf der Webseite...
Bevor ich anfange, möchte ich betonen, dass proce...
Nachdem ich die halbe Nacht daran gearbeitet hatt...
Inhaltsverzeichnis 1. Einleitung 2. Haupttext 2.1...
Kernkonzepte von webpack-dev-server Webpacks Cont...