Zugriff auf localhost des Linux-Subsystems über Windows

7

Ich benutze Windows 10 und habe Ubuntu 16.04 als Linux-Subsystem installiert. Ich habe eine Rails-App für Port 4567 ausgeführt, auf die ich von Windows aus zugreifen möchte.

Ich kenne einen Ansatz der Verwendung von IP-Adressen, aber ifconfig hat nicht funktioniert (Ich habe versucht zu laufen /sbin/ifconfig ). Dies gibt eine Warnung aus als, Warning: cannot open /proc/net/dev (No such file or directory). Limited output.

Ich suchte im Internet, stieß auf diese offene Ausgabe . Gibt es also eine alternative Lösung?

peeyushsrj
quelle
1. Ubuntu unter Windows basiert auf 14.04. 2. Sie können einfach eine VM verwenden. Es ist einfacher einzurichten, hat wahrscheinlich eine GUI (falls gewünscht) und unterstützt alle Funktionen, die Sie benötigen.
GiantTree
Nun, ich habe es auf 16.04.1 aktualisiert. GUI wird nicht benötigt. V.M. macht das System langsam
peeyushsrj
Nun, Sie können Rails direkt unter Windows ausführen und Linux vollständig entfernen.
GiantTree
Dafür müssen Windows Ruby, Devkit, Rails usw. installieren, wodurch das System wieder langsamer wird.
peeyushsrj

Antworten:

9

Die Antwort darauf ist überraschend einfach, weshalb die Suche nicht die richtigen Ergebnisse liefert.

Die WSL bietet lediglich eine Übersetzungsschicht zwischen den Linux-Apps und dem Windows-Kernel, ähnlich wie Wine unter Linux arbeitet. Aus diesem Grund sind einige Kernkomponenten des Ubuntu-Systems einfach nicht vorhanden, wobei Networking einer von ihnen ist. WSL übersetzt die Linux-Systemaufrufe in Windows-Aufrufe, sodass die Ubuntu-Netzwerkdaten genau den gleichen TCP / IP-Stack durchlaufen wie die Windows-Daten.

Kurz gesagt bedeutet dies für den Zugriff auf den Linux-Localhost, dass Sie nur auf die Fenster zugreifen, sie sind gleich. localhost:4567 oder 127.0.0.1:4567 wird tun was du willst.

Nebenbei habe ich Schienen bei der WSL verwendet, es scheint perfekt zu funktionieren, außer dass die Swing- und Listen-Juwelen nicht gut spielen.

Owen Tourlamain
quelle
Vieles geklärt. Vielen Dank.
kmansoor
Es klappt :) Installiert Ubuntu, Nginx drauf, Nginx gestartet und jetzt kann ich öffnen localhost unter Windows :) Danke
Lukas