docker run -v mountet Datenvolumes abnormal und der Containerstatus wird immer neu gestartet

docker run -v mountet Datenvolumes abnormal und der Containerstatus wird immer neu gestartet

Symptome:

Nach dem Hinzufügen des Parameters -v zu Docker Run befindet sich der Container immer im Neustartstatus. Durch Entfernen des Parameters -v kann er normal ausgeführt werden.

Finden Sie das Problem:

Docker-Protokolle „Container-ID“ verwenden

Diese Container-ID ist die Container-ID, die nach dem Docker-Lauf zurückgegeben wird.

Wie Sie sehen, handelt es sich um ein Problem mit verweigerter Berechtigung.

Lösung des Problems:

Beim Ausführen von Docker Parameter hinzufügen: add --privileged=true

Zum Beispiel:

docker run -dit -e MYSQL_ROOT_PASSWORD=123456 --name saasdev-mysql --restart always -v /home/data/mysql:/var/lib/mysql --privileged=true -p 3308:3306 mysql:5.6

Das Problem wurde erfolgreich gelöst und der Container wurde normal gestartet

Eine kleine Erklärung:

--privileged=true

Mit diesem Parameter hat die Root im Container echte Root-Rechte.

Andernfalls verfügt der Root im Container nur über die Berechtigungen eines normalen Benutzers außerhalb.

Ein mit Privilegien gestarteter Container kann viele Geräte auf dem Host sehen und sie mounten.

Es ermöglicht Ihnen sogar, einen Docker-Container innerhalb eines Docker-Containers zu starten

Ergänzung: Parameter docker --restart=always Docker startet den Container automatisch neu

Wenn Sie beim Erstellen eines Containers den Parameter --restart=always hinzufügen, wird der Container automatisch gestartet, wenn Docker neu gestartet wird.

Anwendung:

Docker-Container-Update –restart=immer Containername

Die Betriebsbeispiele lauten wie folgt:

[root@localhost mnt]# docker ps -a
CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN
46cdfc60b7a6 nginx „nginx -g 'daemon ...“ Vor etwa einer Minute 42 Sekunden aktiv 80/tcp n3
79d55a734c26 nginx „nginx -g 'daemon ...“ Vor etwa einer Minute 42 Sekunden aktiv 80/tcp n2
f7b2206c019d nginx „nginx -g 'daemon ...“ Vor etwa einer Minute 46 Sekunden aktiv 80/tcp n1
[root@localhost mnt]# Docker-Container-Update --restart=immer n1
Nr. 1
[root@localhost mnt]# systemctl Neustart Docker 
[root@localhost mnt]# docker ps -a
CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN
46cdfc60b7a6 nginx "nginx -g 'daemon ..." vor 2 Minuten Beendet (0) vor 5 Sekunden n3
79d55a734c26 nginx "nginx -g 'daemon ..." vor 2 Minuten Beendet (0) vor 5 Sekunden n2
f7b2206c019d nginx „nginx -g 'daemon ...“ vor 2 Minuten Up 2 Sekunden 80/tcp n1
 

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Docker mountet lokale Verzeichnisse und Datenvolumen-Container-Operationen
  • Eine kurze Zusammenfassung der Bereitstellung eines Docker-Container-Datenvolumens
  • Detaillierte Erläuterung der Container-Datenmengen und der Datenverwaltung in Docker
  • Detaillierte Einführung und Beispiele für Docker-Datenvolumes und -Datencontainer
  • Detaillierte Einführung in Docker-Datenvolumen und Datenvolumencontainer
  • Einführung in das Datenvolumen von Docker-Containern und Betriebsbeispiele

<<:  Eine kurze Diskussion des interessanten Boxmodells der CSS3-Boxgrößeneigenschaft

>>:  Neue Funktionen in MySQL 8.0 - Einführung in Check Constraints

Artikel empfehlen

jQuery erzielt einen atmenden Karusselleffekt

In diesem Artikel wird der spezifische Code von j...

Hilfe zum Webdesign: Datenreferenz für Web-Schriftgrößen

<br />Der Inhalt wurde aus dem Internet repr...

Detaillierte Erklärung der Anzeigeeigenschaft im CSS-Beschriftungsmodus

Der Code sieht folgendermaßen aus: <!DOCTYPE h...

Die Kombination und der Unterschied zwischen ENTRYPOINT und CMD im Dockerfile

Im vorherigen Artikel [Detaillierte Erläuterung v...

Gemeinsame MySQL-Sicherungsbefehle und Shell-Sicherungsskripte

Um mehrere Datenbanken zu sichern, können Sie den...

Umfassendes Verständnis von HTML-Formularelementen

Wie unten dargestellt: XML/HTML-CodeInhalt in die...

Häufige Ursachen und Lösungen für langsame MySQL-SQL-Anweisungen

1. Langsame Abfrage aufgrund fehlenden oder ungül...

Implementierung der schnellen Projektkonstruktion von vue3.0+vant3.0

Inhaltsverzeichnis 1. Projektkonstruktion 2. Vue3...

Einführung in general_log-Protokollwissenspunkte in MySQL

Die folgenden Funktionsdemonstrationen basieren a...

isPrototypeOf-Funktion in JavaScript

Inhaltsverzeichnis 1. istPrototyp von() Beispiel ...

Vue.js-Framework implementiert Warenkorbfunktion

In diesem Artikel wird der spezifische Code des V...

Leitfaden zur effizienten Nutzung von MySQL-Indizes

Vorwort Ich glaube, die meisten Leute haben MySQL...