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

Was sind die Vorteile von MySQL MGR?

MGR (MySQL Group Replication) ist eine neue Funkt...

Zusammenfassung der Anwendungsbereiche von Kubernetes

Kubernetes ist aufgrund seiner Anwendungsportabil...

So schreiben Sie speichereffiziente Anwendungen mit Node.js

Inhaltsverzeichnis Vorwort Problem: Kopieren groß...

Eine kurze Analyse der Unterschiede zwischen Undo, Redo und Binlog in MySQL

Inhaltsverzeichnis Vorwort 【Protokoll rückgängig ...

Confluence mit Docker bereitstellen

1. Umweltanforderungen 1. Docker 17 und höher wur...

js um das Schlangenspiel mit Kommentaren zu implementieren

In diesem Artikelbeispiel wird der spezifische Co...

Detaillierte Installation und Verwendung der Virtuoso-Datenbank unter Linux

Ich habe kürzlich einige Dinge zu verknüpften Dat...

Der eigentliche Prozess der Implementierung des Zahlenrätsels im WeChat-Applet

Inhaltsverzeichnis Funktionseinführung Rendern 1....

Aufzeichnungen zur Verwendung von SSH-Befehlen unter Windows 8

1. Öffnen Sie die virtuelle Maschine und das Git-...