답변:
이 기능은 curl에 추가되었습니다 7.40
.
curl --unix-socket /var/run/docker.sock http:/images/json
또 다른 예:
curl --no-buffer -XGET --unix-socket /docker.sock http:/events
GET
명시 적으로 가정하지 않고 명시 적으로 지정합니다 . 그리고 ( tail -f
실시간 업데이트를 위해 ) 버퍼링하지 않습니다 .
(컬 컬 7.40 이상과 함께 제공되는 최초의 우분투 릴리스는 15.10이었습니다.)
cURL 7.50 이상 에서는 호스트 이름을 포함 하여 유효한 URL을 제공 해야하므로 cURL 7.50으로 위 예제를 실행하려면 "더미"호스트 이름을 추가해야합니다.
curl --unix-socket /var/run/docker.sock http://localhost/images/json
과
curl --no-buffer -XGET --unix-socket /docker.sock http://localhost/events
curl
있습니다. 긴 라이브 도커!
curl --no-buffer -XGET --unix-socket tcp://192.168.99.102:2376 http://events
하지만 curl 이 서버에 연결할 수 없습니다. 나는 루비 도커 라이브러리를 사용해
--unix-socket
URI가 아닌에 대한 인수로 소켓 경로를 제공해야합니다 .
확실하지 않지만이 티켓에 따라 :
사실이 아닌 것 같습니다.
이 당 :
socat 또는 nc가 할 수있는 것처럼 보입니다. 위의 코드에서 잘라냅니다.
# 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
나 자신을 시도하지 않았습니다.
\r\n\r\n
아니라 마지막 에 제공 할 수있는 예외와 함께 작동\r\n
echo -e "GET / HTTP/1.1\r\n\r\n"