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
Inhaltsverzeichnis Vorwort 1. Was ist 2. So verwe...
Hintergrund Wie wir alle wissen, ist Nginx ein Ho...
1- Dropdown-Auswahlfelder gestalten – Ändern Sie ...
Inhaltsverzeichnis 1. Installation: 2. Verwendung...
Ändern Sie den Standardstil der Auswahl, normalerw...
Wenn wir den Quellcode vieler Websites überprüfen...
Anti-Shake: Verhindert, dass wiederholte Klicks E...
CSS3-Syntax: (1rem = 100px für ein 750px-Design) ...
Inhaltsverzeichnis 1. Zeichne einen Kreis 2. Krei...
Ich stelle hauptsächlich vor, wie man im WeChat-A...
Wichtige Punkte Mit der CSS-Eigenschaft „Größe än...
Inhaltsverzeichnis Starten Sie Docker Stoppen Sie...
Es zeigt hauptsächlich, wie X-Frame-Options, X-XS...
Beim Schreiben von HTML definieren wir häufig mehr...
Inhaltsverzeichnis 1 Einführung in Benutzervariab...