[Hinweis] So starten Sie den mit Docker-Compose eingerichteten Windows-Container neu

Einführung

Es gab eine Zeit, in der ich dachte, es sei egal, ob ich Docker, Windows oder Linux verwendete. Abgesehen von den unterschiedlichen Verhaltensweisen je nach Betriebssystem scheint es Unterschiede in Abhängigkeit von der Containerisierungsmethode zu geben. Es gibt zwei Hauptansätze zum Erstellen eines Containers in Windows. Eine ist die Verwendung von Hyper-V und die andere die Verwendung der Windows-Prozessisolation. Ich werde die Details weglassen, aber es scheint, dass das Verhalten von Docker (vielleicht nur komponieren) zwischen den beiden etwas anders ist, also war ich süchtig nach der Neustarteinstellung.

Was du machen willst

Aktivieren Sie die Docker-Compose-Neustarteinstellung für den Windows Server-Container.

Umgebung

OS:Windows Server 2019 Datacenter

Problem

Docker verfügt über eine Neustartoption, mit der Sie festlegen können, ob der Container beim Starten des Computers gestartet werden soll. Selbst wenn Sie docker-compose.yml, das in der Linux-Umgebung funktioniert hat, auf den Windows Server-Container portiert haben, konnte er nicht erfolgreich neu gestartet werden.

Ursache

Als ich beim Start und Neustart den Betriebsstatus von Docker überprüfte, stellte sich heraus, dass das Standardnetzwerk, das beim Starten von Docker-Compose aktiviert wurde, beim Neustart verschwand.

Gegenmaßnahmen

Es wurde gelöst, indem die Netzwerkeinstellung mit nat external erstellt wurde.

version: '3.5'

networks:
  default:
    external:
      name: "nat"

services:
  hoge:
    build:
      context: .
      dockerfile: ./hoge/Dockerfile
    container_name: hoge
    restart: always
    command: powershell
    stdin_open: true
    volumes:
      - .\hoge:C:\hogehoge

Schließlich

Wenn Sie in Schwierigkeiten sind, lesen Sie am besten die offizielle Microsoft-Dokumentation (https://docs.microsoft.com/en-us/virtualization/windowscontainers/).

Achtung und Haftungsausschluss

Der Inhalt dieses Artikels ist meine persönliche Meinung, nicht die offizielle Meinung der Organisation, der ich angehöre. Der Autor und die Organisation, der er angehört, sind nicht verantwortlich für Probleme, die Benutzern oder Dritten nach der Implementierung des Inhalts dieses Artikels auftreten können.

Recommended Posts

[Hinweis] So starten Sie den mit Docker-Compose eingerichteten Windows-Container neu
So richten Sie einen Proxy mit Authentifizierung in Feign ein
[Rails] So beschleunigen Sie das Docker-Compose
Verwendung von MinIO mit derselben Funktion wie S3 Verwenden Sie Docker-Compose
[Hinweis] Erste Schritte mit Rspec
So richten Sie kapt ein und verwenden es
[Java] So stellen Sie die Datums- und Uhrzeit auf 00:00:00 ein
So setzen Sie JAVA_HOME mit dem Appassembler-Maven-Plugin von Maven
So überwachen Sie Nginx mit Docker-Compose mit Datadog
[Java] (für MacOS) Methode zur Einstellung des Klassenpfads
So richten Sie jEnv (Mac) ein und bedienen es
So richten Sie JavaED Full Edition (Plejaden) ein
So richten Sie Computer Vision für die Verfolgung von Bildern und Videos mit TrackingJs ein
Freigeben auf der Hostseite (Windows) und der Gastseite (CentOS 7) mit VirtualBox
So ändern Sie die Aktion mit mehreren Senden-Schaltflächen
So stellen Sie die Anzeigezeit in Rails auf japanische Zeit ein
Organisierte schrittweise Interaktion mit dem JDK
[Docker] So sehen Sie den Inhalt von Volumes. Starten Sie einen Container mit Root-Rechten.
So erstellen Sie Docker-Compose
So legen Sie ein Wiederholungslimit für Sidekiq fest und benachrichtigen tote Warteschlangen mit Slack
Die Geschichte, wenn der Container nicht mit Docker-Compose gestartet wird und ein Fehler auftritt
Ich möchte die API mit Rails auf mehreren lokal eingerichteten Docker-Composes treffen
So richten Sie Android OR Mapper "Orma" (Kotlin) ein
Zusammenfassung der Verwendung des im IE festgelegten Proxy-Sets bei der Verbindung mit Java
Die Geschichte, die zur Lösung des Fehlers führte, weil postgres nicht mit Docker-Compose begann
Überprüfen Sie, wie Sie das Zeitlimit festlegen, wenn Sie eine Verbindung zu Spring + HikariCP + MySQL herstellen und SQL ausführen
Festlegen von Umgebungsvariablen bei Verwendung von Payjp mit Rails
So stellen Sie die Chronik ein, wenn sich die Zeit in CentOS7 verschiebt
Großschreibung nur des angegebenen Bereichs mit Teilzeichenfolge. (Verwendung von Teilzeichenfolgen)
[Mit Backtricks] So stellen Sie React to the simple Rails vor
Umgang mit dem Fehler FEHLER: Während der Ausführung von gem ... (Gem :: FilePermissionError)
Ich möchte den Startbefehl mit Docker-Compose an Postgres übergeben.
[Docker] Zugriff auf den Host aus dem Container heraus. http: //host.docker.internal:
Richten Sie GitLab mit Docker ein
So legen Sie Nginx von Docker fest
Wie man mit html.erb nummeriert (nummeriert)
So aktualisieren Sie mit activerecord-import
So legen Sie Java-Konstanten fest
[Docker] So sichern und wiederherstellen Sie DB-Daten der Rails-Anwendung auf Docker-Compose [MySQL]
So legen Sie die IP-Adresse und den Hostnamen von CentOS8 fest
[Rails] Wie man Kaminari mit Slim einführt und das Design ändert
So verwenden Sie das Befehlszeilentool "Java" ... So vermeiden Sie das Auftauchen
Was ich getan habe, als die DB nicht mit Docker-Compose gestartet wurde
Lassen Sie uns Stanford CoreNLP Server für Windows einrichten (kürzeste Anleitung)
[Schienen] Verwendung von Geräten (Hinweis)
Verwendung der Methode form_with
Wie fange ich mit schlank an?
So finden Sie den durchschnittlichen Winkel
[Java] Mit Arrays.asList () zu beachtende Punkte
So erstellen Sie einen Java-Container
Wie man ein Zeichen mit "~" einschließt
Verwendung der Wrapper-Klasse
So stellen Sie Spring Boot + PostgreSQL ein
Wie man mssql-tools mit alpine benutzt