Solargraph + Docker не может привязаться к другому интерфейсу - PullRequest
0 голосов
/ 18 сентября 2018

Я использую сервер solargraph в док-контейнере.Когда сервер solargraph запускается с:

solargraph server

Сервер автоматически связывается с интерфейсом 127.0.0.1.Этот интерфейс недоступен за пределами док-контейнера и не позволяет моей IDE, работающей на моем хосте, общаться с solargraph и получать детали, необходимые для автозаполнения.

Кто-нибудь знает, возможно ли принудительно заставить сервер solargraphпривязать к другому интерфейсу?Кажется, я могу изменить порт (с -p), но не интерфейс.

Вывод из солнечного графика:

root@ec55f4209be3:/app# solargraph server
[2018-09-18 12:00:25] INFO  WEBrick 1.3.1
[2018-09-18 12:00:25] INFO  ruby 2.3.5 (2017-09-14) [x86_64-linux]
== Sinatra (v1.4.8) has taken the stage on 7657 for development with backup 
from WEBrick
[2018-09-18 12:00:25] INFO  WEBrick::HTTPServer#start: pid=49 port=7657
127.0.0.1 - - [18/Sep/2018:12:01:16 UTC] "GET / HTTP/1.1" 404 512

В настоящее время можно получить к нему доступ только изнутри контейнера, выполнив:

wget http://localhost:7657

Обновление:

Я недавно обнаружил, что одна из моих библиотек задерживает установку последней версии solargraph.Я обновил до последней версии, которая поставляется с опцией хоста при запуске сервера.

пример:

solargraph socket --host=0.0.0.0 --port=5001

Хотя это должно работать, я все еще не могу получить доступ к приложению сервера Solargraph.

1 Ответ

0 голосов
/ 18 сентября 2018

Полное определение флага публикации для запуска Docker на самом деле включает имя хоста .Например,

docker run -p 127.0.0.1:80:8080/tcp ubuntu bash
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...