关于-docker.sock

参考1

docker 是 client-server 架构.

/var/run/docker.sock 是 docker daemon 监听的套接字,容器中的进程可以通过它与 docker daemon 通信.

/var/run/docker.sock 挂载到容器中. 容器就可以通过向 /var/run/docker.sock 发送 http 请求来和 docker daemon 通信.

也就是是说 docker run 之类的命令实际上是转换为向这个套接字发出的请求.

因此,若容器中有 docker 的命令行工具和宿主机上的 /var/run/docker.sock 文件,就可以在 dockr 之内运行 docker 命令.

参考2

可以用 curl 命令向 /var/run/docker.sock 套接字发送 http 请求,如:

1
$ curl -XPOST --unix-socket /var/run/docker.sock -d ‘{“Image”:”nginx”}’ -H ‘Content-Type: application/json’ http://localhost/containers/create

关于-docker.sock
http://example.com/2022/11/05/关于-docker.sock/
作者
Jie
发布于
2022年11月5日
许可协议