【云计算】docker daemon如何提供Restful的API
2024-10-18 12:40:47
Docker Remote API 如何使用?
docker 的 Remote API 定义如下: 这个API看着是http协议的但是我用 curl http://127.0.0.1:4243/containers/json 这个命令却什么也得不到,我从网上另外搜到的命令 echo -e "GET /images/json HTTP/1.0\r\n" | nc -U /var/run/docker.sock 可以得到所有容器的信息,我想知道如果是 http 协议的接口的话为什么用 curl 得不到数据?
按投票排序 按时间排序
4 个回答
你要把 docker daemon 绑定到该端口上。默认情况下,docker daemon使用unix socket(unix:///var/run/docker.sock) 先停止docker daemon再重新启动:
service docker stop
docker -d -H unix:///var/run/docker.sock -H 0.0.0.0:4243
之后就可以:
curl http://127.0.0.1:4243/containers/json
•
没有帮助
•
知乎用户,骨灰级Docker粉。
知乎用户
赞同
赞同
Docker Remote API是一个取代远程命令行界面(rcli)的REST API。本文中,我们将使用命令行工具cURL来处理url相关操作。cURL可以发送请求、获取以及发送数据、检索信息。具体内容你可以看看这篇文章:Docker入门教程(八)Docker Remote API
•
没有帮助
•
1 修改配置文件 CentOS: /etc/sysconfig/docker Ubuntu: /etc/init/docker.conf DOCKER_OPTS='-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'
2. 重启 service restart docker
3. 测试 在本机 curl http://127.0.0.1:2375/info 在其他机器上:curl http://hostanme:2375/info * 此时本地client可以继续通过Unix sock与docker daemon通行 例如:docker info 命令继续有效。
2. 重启 service restart docker
3. 测试 在本机 curl http://127.0.0.1:2375/info 在其他机器上:curl http://hostanme:2375/info * 此时本地client可以继续通过Unix sock与docker daemon通行 例如:docker info 命令继续有效。
•
没有帮助
•
涂飞平,伪架构师,真程序员
默认以文件socket方式启动docker的,改成tcp的就可以了
•
没有帮助
•
参考资料:
http://www.zhihu.com/question/24852884
http://blog.csdn.net/zhang__jiayu/article/details/43453369
最新文章
- python 类
- SSL/TLS协议运行机制的概述
- UIAlertController 使用
- Hacker communities collection
- 移动端前端UI库—Frozen UI、WeUI、SUI Mobile
- git学习 git-flow
- osg中使用MatrixTransform来实现模型的平移/旋转/缩放
- BZOJ-3212 Pku3468 A Simple Problem with Integers 裸线段树区间维护查询
- Oracle字符集转换
- Canvas_2
- php项目报错 Warning: session_start(): open(D:/software/wamp/wamp/tmp\sess_msrjot7f32ciqb1p2hr4ahejg4, O_RDWR) f
- 同步博客—CSDN推广
- Java基本语法-----java进制的转换
- fillder--修改返回数据
- ERROR org.redisson.client.handler.CommandDecoder - Unable to decode data. channel
- ProDinner
- Combination Sum II leetcode java
- 第四章 TCP粘包/拆包问题的解决之道---4.1---
- jffs2系统制作2
- (UDP)socket编程