Der Container wurde bereits erstellt. So erfahren Sie seine Startparameter (wo die Daten gemountet sind) #Angenommen, ein Container wird mit dem folgenden Befehl gestartet: docker run -d --name mysql\ -p 3306:3306\ -e MYSQL_ROOT_PASSWORD=123456\ --restart=immer\ mysql:5.5 --character-set-server=utf8 #So erhalten Sie die Startparameter über den Containernamen [root@jenkins ~]# docker inspect mysql_cdh [ { "ID": "fbc3fba81b57bc5b5871746098b5f1f7ef0ed7716a786584a5effbb88ba156e6", "Erstellt": "2019-09-25T01:43:37.720505875Z", "Pfad": "docker-entrypoint.sh", "Argumente": [ „--character-set-server=utf8“ ], "HostKonfiguration": { "Bindet": [ „mysql-daten:/var/lib/mysql“ ], "ContainerIDFile": "", "LogConfig": { "Typ": "json-Datei", "Konfiguration": {} }, "Netzwerkmodus": "Standard", "PortBindings": { "3306/tcp": [{ "HostIp": "", "HostPort": "3306"} ] }, "Neustartrichtlinie": { "Name": "immer", "MaximumRetryCount": 0 }, "Reittiere": [ { "Typ": "Volumen", "Name": "mysql-daten", "Quelle": "/var/lib/docker/volumes/mysql-data/_data", "Ziel": "/var/lib/mysql", "Treiber": "lokal", "Modus": "z", "RW": wahr, "Ausbreitung": "" } ], 1. Bildebene: Dateispeicherpfad [root@master ~]# Docker-Image inspizieren nginx | tail -n 22 "GraphTreiber": { "Daten": { "LowerDir": "/var/lib/docker/overlay2/bf20cf788cc053f00ff1467525d50e19bd1cf07a2167f72511bdfcb28918a472/diff:/var/lib/docker/overlay2/317d80bb7ae58ed288be9ebd84aeb5b4b3a1c06f3211f5d1f32d89b629d1876e/diff", "MergedDir": "/var/lib/docker/overlay2/7782d0eb292fdc8bbd73bf9bae2d65468e8aba0bcd6baed55ac348618b80ae16/zusammengeführt", "UpperDir": "/var/lib/docker/overlay2/7782d0eb292fdc8bbd73bf9bae2d65468e8aba0bcd6baed55ac348618b80ae16/diff", "Arbeitsverzeichnis": "/var/lib/docker/overlay2/7782d0eb292fdc8bbd73bf9bae2d65468e8aba0bcd6baed55ac348618b80ae16/work" }, "Name": "overlay2" }, 2. Containerebene: Dateispeicherpfad #1, Starten Sie den Container [root@master ~]# docker run -d --name nginx2 nginx a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8 #2, Holen Sie sich die Container-ID [root@master ~]# docker inspect nginx2 | grep -i id [root@master ~]# docker inspect nginx2 | grep -i id "ID": "a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8", "Pid": 2069, "ExecIDs": null, "ContainerIDFile": "", #Temporäre Containerdateien anzeigen – bei jeder Erstellung zufällig generierte Dateien (Containerebene) [root@master ~]# docker inspect nginx2 | grep -i Pfad "Pfad": "nginx", "ResolvConfPath": "/var/lib/docker/containers/a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8/resolv.conf", "HostnamePfad": "/var/lib/docker/containers/a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8/hostname", "HostsPath": "/var/lib/docker/containers/a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8/hosts", "LogPath": "/var/lib/docker/containers/a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8/a9c9f31cdccf13c3385f3de33443325d2e14d69458e6d679e54c8cf9e5ff24c8-json.log", #Verwenden Sie die Container-ID, um das Verzeichnis zu finden, in dem die Containerdaten gespeichert sind: /var/lib/docker/overlay2/containerid ###### #Im Vergleich zum obigen "Image-Layer: Dateispeicherpfad" können Sie sehen, dass der Container die Image-Layer-Dateien über die LowerDir-Mounting-Methode abbildet###### [root@master ~]# docker inspect nginx2 | grep -i dir "LowerDir": "/var/lib/docker/overlay2/d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b-init/diff:/var/lib/docker/overlay2/7782d0eb292fdc8bbd73bf9bae2d65468e8aba0bcd6baed55ac348618b80ae16/diff:/var/lib/docker/overlay2/bf20cf788cc053f00ff1467525d50e19bd1cf07a2167f72511bdfcb28918a472/diff:/var/lib/docker/overlay2/317d80bb7ae58ed288be9ebd84aeb5b4b3a1c06f3211f5d1f32d89b629d1876e/diff", "MergedDir": "/var/lib/docker/overlay2/d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b/zusammengeführt", "UpperDir": "/var/lib/docker/overlay2/d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b/diff", "Arbeitsverzeichnis": "/var/lib/docker/overlay2/d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b/work" Containerhafen übermorgen ändern Suchen Sie die Konfigurationsdatei hostconfig.json über die Container-Layer-Datei und ändern Sie den vom Container zugeordneten Port [root@docker d93185e3a0....2e544ccfa]# pwd /var/lib/docker/containers/d93185e3a0....2e544ccfa [root@docker d93185e3a0....2e544ccfa]# cat hostconfig.json {"Bindet":["/dockersuperset:/home/superset"],"ContainerIDFile":"", "LogConfig":{"Typ":"json-Datei","Konfiguration":{}},"Netzwerkmodus":"Standard", "PortBindings":{"8088/tcp":[{"HostIp":"","HostPort":"8099"}]}...... 3. Geben Sie das Dateispeicherverzeichnis des Spiegelcontainers ein und ändern Sie die Konfigurationsdatei # Geben Sie das Dateispeicherverzeichnis des Spiegelcontainers ein und ändern Sie die Konfigurationsdatei [root@master ~]# cd /var/lib/docker/overlay2/d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# ls Diff Link unten zusammengeführt Arbeit [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# ls diff /ausführen/ nginx.pid [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# ls diff /var/cache/nginx/ client_temp fastcgi_temp proxy_temp scgi_temp uwsgi_temp [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# ls zusammengeführt/ bin/ dev/ etc/ lib/ media/ opt/ root/ sbin/ sys/ usr/ boot/ .dockerenv home/ lib64/ mnt/ proc/ run/ srv/ tmp/ var/ [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# ls zusammengeführt/etc/nginx/ conf.d fastcgi_params koi-utf koi-win mime.types module nginx.conf scgi_params uwsgi_params win-utf [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# Kopf zusammengeführt/etc/nginx/nginx.conf Benutzer nginx; Arbeiterprozesse 1; #Ändern Sie hier die Konfigurationsdatei, entfernen Sie die Semikolons der beiden Zeilen user nginx; worker_process 1; um zu sehen, ob sich die Konfiguration im Container geändert hat [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# head merged/etc/nginx/nginx.conf -n 3 Benutzer nginx Arbeitsprozesse 1 #Melden Sie sich beim Container an und zeigen Sie die geänderte Konfiguration an: Überprüfen Sie, ob sie wirksam ist [root@master d37ff828e63081be6fcfefc73891e7b455596cb921c8021fbf9571f330c0599b]# docker exec -it nginx2 bash root@a9c9f31cdccf:/# Kopf /etc/nginx/nginx.conf -n 3 Benutzer nginx Arbeitsprozesse 1 4. Ändern Sie den Standardspeicherpfad a, Erstellen Sie das Verzeichnis /var/lib/docker neu. #Sichern Sie die Daten im neuen Speicherpfad. Service Docker Stop mkdir /docker.bak mv /var/lib/docker/* /docker.bak #Erstellen Sie einen Softlink mkdir /home/docker-data mv /docker.bak/* /home/docker-data/ && rmdir /docker.bak ln -s /home/docker-data /var/lib/docker b. Ändern Sie die Konfiguration vi /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd --graph /neuer-Pfad/docker #Konfigurationsdatei neu laden systemctl daemon-reload #Docker neu starten systemctl Neustart docker.service Zusatzwissen: Docker gibt das Datenspeicherverzeichnis an Docker gibt das Speicherverzeichnis an (der ursprüngliche Parameter --graph ist ungültig.) Methode 1 1. Konfigurieren Sie /etc/docker/daemon.json in der Docker-Konfigurationsdatei Der folgende Befehl wird hinzugefügt, wenn die Datei daemon.json keinen Inhalt hat. Wenn es Inhalte gibt, brauchen Sie Katze << EOF >>/etc/docker/daemon.json { "Datenstamm": "/mnt/docker-data" } Ende der Laufzeit systemctl Neustart Docker Methode 2 2. Konfigurieren Sie die Startparameter
Fügen Sie nach EXECStart Folgendes hinzu: ExecStart=/usr/bin/dockerd --data-root='/home/docker' systemctl daemon-reload systemctl Neustart Docker Der obige Artikel über den Docker-Dateispeicherpfad und den Abruf des Container-Startbefehls ist der gesamte Inhalt, den der Herausgeber mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Das könnte Sie auch interessieren:
|
<<: Lösungen für das Problem der Erstellung von XHTML- und CSS-Webseiten
>>: Analyse der MySQL-Transaktionsmerkmale und Ebenenprinzipien
Eine einfache Nummernschild-Eingabekomponente (vu...
Inhaltsverzeichnis JavaScript importieren 1. Inte...
In diesem Artikelbeispiel wird der spezifische Co...
Ergebnisse erzielenImplementierungscode html <...
Was wir jetzt simulieren, ist ein Master-Slave-Sy...
Im Forum fragen Internetnutzer oft: „Kann ich den...
In diesem Artikel wird die Installations- und Kon...
Nachdem ich einige Artikel gelesen hatte, habe ic...
Verwenden Sie OSS, um Bilder oder Anhänge in ein ...
In diesem Artikel finden Sie den spezifischen Cod...
Inhaltsverzeichnis Das Problem hierbei ist: Lösun...
Der vollständige Name von Blog sollte Weblog sein,...
Direkt codieren: Wählen Sie „bigint unsigned“ als...
Umgebung: (Docker, K8s-Cluster), fahren Sie mit d...
Quelle des Problems: Wenn der Slave-Server der ge...