默认情况下,Docker daemon监听unix://var/run/docker.sock,并且客户端必须有root权限用来与daemon交互。
为了使用Docker REST API,可以先停止docker服务,然后在启动的时候加-H标记开启远程访问:
service docker stop
docker -d -H unix:///var/run/docker.sock -H 0.0.0.0:4243
为了使配置永久生效,在Ubuntu环境下修改其配置文件 /etc/default/docker,
加入 DOCKER_OPTS="-H=unix:///var/run/docker.sock -H=0.0.0.0:4232"
然后重启docker服务(service docker restart),即可通过访问主机:端口号/Docker API来操作Docker。
下面使用curl命令来访问Client API之version,curl localhost:4232/version, 同时使用python的json.tool对json输出格式化处理:
此外,Docker官方还提供了使用Python编写的API客户端 docker-py,以Client API之version为例:
参考:
http://www.zhihu.com/question/24852884
http://blog.csdn.net/zhang__jiayu/article/details/43453369