Respuestas:
La característica se agregó en curl 7.40
.
curl --unix-socket /var/run/docker.sock http:/images/json
Otro ejemplo:
curl --no-buffer -XGET --unix-socket /docker.sock http:/events
Que especifica GET
explícitamente (en lugar de asumir). Y no se almacenará en el búfer (para tail -f
la actualización en tiempo real).
(La primera versión de Ubuntu que se envió con curl 7.40 o posterior fue 15.10).
cURL 7.50 y versiones posteriores requieren que se proporcione una URL válida , incluido un nombre de host, por lo que para ejecutar los ejemplos anteriores con cURL 7.50, se debe agregar un nombre de host "ficticio", por ejemplo:
curl --unix-socket /var/run/docker.sock http://localhost/images/json
y
curl --no-buffer -XGET --unix-socket /docker.sock http://localhost/events
curl
después de todo. ¡Viva Docker!
curl --no-buffer -XGET --unix-socket tcp://192.168.99.102:2376 http://events
pero curl no se puede conectar al servidor. He intentado utilizar la biblioteca de rubí ventana acoplable y se conecta muy bien el uso de este
--unix-socket
, no un URI.
No estoy seguro, pero según este boleto:
No parece ser el caso.
Por esto:
parece que socat o nc pueden hacerlo, recorte del recorte anterior:
# Socat version
echo -e "GET /images/json HTTP/1.1\r\n" | socat unix-connect:/var/run/docker.sock STDIO
# nc version (netcat-freebsd)
echo -e "GET /images/json HTTP/1.0\r\n" | nc -U /var/run/docker.sock
Yo tampoco lo he intentado.
\r\n\r\n
al final, no\r\n
echo -e "GET / HTTP/1.1\r\n\r\n"