[开源夏令营][三] 研究 Docker remote API 的前期准备
来源:互联网 发布:淘宝店铺月销量怎么看 编辑:程序博客网 时间:2024/06/05 01:12
在继续研究下去之前,先了解一下 curl 和 python 这两个工具我们要怎么用。
cURL 的基础
对于 curl 这个工具,能够支持 DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS,TELNET和TFTP协议。在这次的开源夏令营项目中,我主要用这个工具来完成HTTP请求。
它的一个基本用法是:
curl theegg.me/docker/
它会返回一段HTML代码:
404 page not found
如果加一个参数 -i (全称为 --include):
curl -i theegg.me/docker/
你会看到包括头部的HTML代码:
HTTP/1.1 404 Not FoundServer: nginxDate: Thu, 17 Jul 2014 08:49:50 GMTContent-Type: text/plain; charset=utf-8Content-Length: 19Connection: keep-alive404 page not found
curl --include --request POST --header "Content-type: application/json" --data '{"name":"Nuthanger Farm","location":{"lat" : 51.244031,"long" : -1.263224}}' http://localhost:9000/places
可以看到,我使用了 include 参数,表明我要包含头部信息,也指明了请求的方法为 POST,并指明请求的资源为 json,发送的数据为一段json字符串。有了这些基本知识,我们就足够研究 Docker 的 remote api了。
涉及到python的
涉及到python的内容实际上很简单,就只是一个格式化工具,json.tool,使用的时候我们通过管道和curl的输出配合。
curl theegg.me/docker/images/json | python -mjsontool
你可以看到如下结果:
[ { "Created": 1405461399, "Id": "88b42ffd1f7cc87c46edf70924b3e24f18da0eb69337deff4db2979d6e1032d8", "ParentId": "c69cab00d6ef21152755a3de928625d7a02860ebe918b8fe9d1dd6aba15229b2", "RepoTags": [ "fedora:latest" ], "Size": 373742581, "VirtualSize": 373742581 }, { "Created": 1403128361, "Id": "e54ca5efa2e962582a223ca9810f7f1b62ea9b5c3975d14a5da79d3bf6020f37", "ParentId": "6c37f792ddacad573016e6aea7fc9fb377127b4767ce6104c9f869314a12041e", "RepoTags": [ "ubuntu:latest" ], "Size": 8, "VirtualSize": 276100357 }]
当然,在这上面还有一小段 curl 下载的进度指示被我忽略了。如果想要让 curl 安静一些,不显示进度条,可以加一个参数 -s,即--silent
0 0
- [开源夏令营][三] 研究 Docker remote API 的前期准备
- [开源夏令营][四] Docker remote API 之 镜像篇
- [开源夏令营][五] Docker remote API 之 容器篇
- 关于docker remote api未授权访问漏洞的学习与研究
- 开源夏令营进度--调查准备
- Docker Rest(Remote) API
- 8 Docker Remote API
- Docker Remote API
- docker remote api 调用
- Docker Remote API
- 编程的前期准备
- [开源夏令营][一] Docker Dockboard UI
- [开源夏令营][二] Docker 环境搭建
- Docker Remote API 初步尝试
- Docker Remote api(一)
- Docker remote api 创建container
- 架构设计的前期准备
- GdiPlus使用的前期准备
- 函数 (下)
- 广搜 基础 走迷宫 记录路径
- 对象池技术
- Android显示Log信息(带行号,类名,方法名)
- 算法导论学习笔记-5.2 指示器随机变量
- [开源夏令营][三] 研究 Docker remote API 的前期准备
- win8系统下安装 .NET Framework 3.5出现错误代码:0x800F0906
- Calendar
- java操作Oracle类型XMLType总结二:使用Mybatis
- 深入浅出工厂模式
- mssql-数字转为中文大写函数
- git 命令之git rebase 最详细用法 .
- 算法导论学习笔记-5.3 随机算法
- 获取Wifi相关信息