У меня работает HTTP-сервер /var/run/my-server.sock, и я хочу проверить его, отправив простой запрос с использованием cURL. Можно ли это сделать с помощью cURL? Можно ли это сделать вообще или должен быть установлен обратный прокси-сервер?
Который указывает GETявно (а не предполагается). И не будет буфера (для tail -fобновления в реальном времени).
(Первая версия Ubuntu, выпущенная с curl 7.40 или новее, была 15.10).
cURL 7.50 и выше требует предоставления действительного URL , включая имя хоста, поэтому для запуска приведенных выше примеров с cURL 7.50 необходимо добавить «фиктивное» имя хоста, например:
И в этом примере я вижу тот самый сокет, в который я собирался curlв конце концов. Да здравствует Докер!
космонавт
Кстати, примеры с netcat и socat больше не приведены выше :]
Hubro
Это действительно полезно. Тем не менее, я пытаюсь это сделать, curl --no-buffer -XGET --unix-socket tcp://192.168.99.102:2376 http://eventsно curl не может подключиться к серверу. Я попытался использовать библиотеку ruby docker, и она прекрасно подключается, используя это
user1513388
1
@ user1513388 Я уверен, что вы должны указать путь к сокету в качестве аргумента --unix-socket, а не URI.
curl
в конце концов. Да здравствует Докер!curl --no-buffer -XGET --unix-socket tcp://192.168.99.102:2376 http://events
но curl не может подключиться к серверу. Я попытался использовать библиотеку ruby docker, и она прекрасно подключается, используя это--unix-socket
, а не URI.Не уверен, но в соответствии с этим билетом:
похоже, это не так.
По этому:
похоже, что socat или nc могут это сделать, отрываясь от приведенного выше фрагмента:
Я тоже не пробовал.
источник
\r\n\r\n
в конце, а не\r\n
echo -e "GET / HTTP/1.1\r\n\r\n"