Lösen Sie das Problem, dass beim Ausführen von Docker zwei Ports gestartet werden, die unterschiedliche Ports belegen

Lösen Sie das Problem, dass beim Ausführen von Docker zwei Ports gestartet werden, die unterschiedliche Ports belegen

Problembeschreibung:

Nach der Ausführung von docker run -p 19918:19918/tcp -v /etc/localtime:/etc/localtime

Docker ps zeigt, dass Port 19918 und ein weiterer Port gestartet sind und in der Registrierung kein ausführbares Programm gefunden wird.

Problemanalyse:

Der andere gestartete Port wurde zuvor konfiguriert. Es wird spekuliert, dass der vorherige Container zusätzlich zu dem gerade während der Ausführung erstellten Projekt ausgeführt wurde.

Lösung:

Zeigen Sie die Container in Docker-Images an und löschen Sie dieselben und zwei ausgeführte Port-Container. Führen Sie es erneut aus und es zeigt den Erfolg!

Zusammenfassen:

Halten Sie Benennungsnormen ein und entfernen Sie unnötige Container rechtzeitig.

Zusätzliche Kenntnisse: Führen Sie mehrere verschiedene Prozesse aus, wenn Docker gestartet wird, installieren Sie SSH und starten Sie es gleichzeitig mit Jenkins, wenn Docker gestartet wird

Als ich kürzlich an einem Jenkins-Slave-Knoten arbeitete, musste ich SSH installieren, um eine Verbindung mit dem Master herzustellen. Zu diesem Zeitpunkt musste der Slave den SSH-Dienst installieren, aber nachdem der Knoten neu gestartet wurde, musste ich SSH manuell starten.

Um Probleme zu vermeiden, führen Sie SSH- und Jenkins-Dienste aus, wenn Sie starten möchten

1. Wenn Docker ausgeführt wird, sind zum Starten von SSH Root-Berechtigungen erforderlich. Andernfalls haben Sie keine Berechtigung zum Ausführen vieler Dinge auf SSHD.

Fügen Sie daher beim Ausführen von Docker einen Parameter hinzu --user root

docker run -d --user root --name jenkins_nodes3 --add-host gitlab.com:100.20.20.100 -v /home/_data_slave:/var/jenkins_home -p 8188:8080 -p 51005:50000 -p 8122:22 jenkins_ssh

2. Ändern Sie die Startdatei /usr/local/bin/jenkins.sh und fügen Sie die folgende Zeile hinzu

/usr/sbin/sshd -D > null 2>&1 &

Wenn es Ihr eigenes Programm ist, können Sie das Protokoll in Ihre eigene Protokolldatei umleiten

Der obige Artikel zur Lösung des Problems, dass beim Ausführen von Docker zwei Prozesse gestartet werden, die unterschiedliche Ports belegen, ist alles, was ich mit Ihnen teilen kann. Ich hoffe, er kann Ihnen als Referenz dienen, und ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen.

Das könnte Sie auch interessieren:
  • Zwei Möglichkeiten zum Beenden von Bash im Docker-Container unter Linux
  • Docker verwendet Supervisor zur Verwaltung von Prozessvorgängen
  • Aktivieren Sie den SSHD-Vorgang im Docker

<<:  Unbekannte Verwendung von Object.entries in JavaScript

>>:  So erstellen Sie eine Testdatenbank mit zig Millionen Testdaten in MySQL

Artikel    

Artikel empfehlen

Anwendungshandbuch für chinesische WEB-Schriftarten

Die Verwendung von Schriftarten im Web ist sowohl ...

Detailliertes Tutorial zur Installation von PHP und Nginx auf Centos7

Da die Anwendung von CentOS auf der Serverseite i...

Native JS-Implementierung der Slider-Intervallkomponente

In diesem Artikelbeispiel wird der spezifische Co...

Vue.js implementiert eine Timeline-Funktion

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

Schritte der MySQL-Methode zum Bestimmen, ob es sich um eine Teilmenge handelt

Inhaltsverzeichnis 1. Problem 2. Lösung Option 1:...

Detaillierte Erläuterung der Js-Klassenkonstruktion und Vererbungsfälle

Die Definition und Vererbung von Klassen in JS si...

Vue führt einen einfachen zufälligen Namensaufruf durch

Inhaltsverzeichnis Layoutteil: <div id="a...

Zwei Lösungen für das 404-Problem beim Aktualisieren des Vue-Paket-Upload-Servers

1: Nginx-Serverlösung, ändern Sie die .conf-Konfi...

HTML löst das Problem ungültiger Tabellenbreiteneinstellungen

Wenn Sie den Stil „table-layer:fixed“ für eine Ta...

So verwenden Sie JS zum Parsen des Excel-Inhalts in der Zwischenablage

Inhaltsverzeichnis Vorwort 1. Ereignisse und Zwis...

Ubuntu 16.04 64-Bit in drei Schritten mit 32-Bit-Programmen kompatibel

Schritt 1: Bestätigen Sie die Architektur Ihres S...