[LINUX] Die Weiterleitung des Bindungsports an den Unix-Domain-Socket funktioniert besser

Wenn Sie die Portweiterleitung an den Unix-Domain-Socket binden, können Sie ihn über Volume Mount in den Docker-Container bringen. Dies ist praktisch. Im Folgenden wird MySQL als Beispiel genommen.

Befehl

ssh -o StreamLocalBindUnlink=yes -fNL /tmp/sock/db.sock:$DB_HOST:3306 bastion

Sprungbrett Server sowie Bastion Sie können die Option fN entfernen, wenn Sie sie nicht benötigen. Wenn Sie "-o StreamLocalBindUnlink = yes" hinzufügen, wird dieser überschrieben und weitergeleitet, auch wenn im angegebenen Pfad bereits ein Unix-Domain-Socket vorhanden ist.

Verwenden Sie im Docker-Container

Starten Sie den Container mit --volume / tmp / sock: / tmp / sock.

mysql --socket /tmp/sock/db.sock -u ...

Kann auch mit Locken verwendet werden

https://qiita.com/toritori0318/items/193df8f749a9c4bda883 Schade, dass ich nicht über den Browser darauf zugreifen kann (ich verwende den Browser nicht im Container, aber es ist ärgerlich, zwischen der Bindung an den Port und der Bindung an den Unix-Domain-Socket zu wechseln).

Recommended Posts

Die Weiterleitung des Bindungsports an den Unix-Domain-Socket funktioniert besser
Erstellen Sie einen Unix Domain Socket-Server
UDP-Portweiterleitung