8 Docker Remote API
来源:互联网 发布:fifa online3 mac 编辑:程序博客网 时间:2024/06/05 07:30
Docker Remote API 是将会用来取代 Docker 命令的工具。本文将会用 curl
操作 Docker Remote API。
准备:
示例系统是 Ubuntu,配置文件在 /etc/default/docker
。
需要把此文件的 DOCKER_OPTS
改为 DOCKER_OPTS="-H 127.0.0.1:5555 -H unix:///var/run/docker.sock"
。
修改完毕后,重启 Docker。
Docker 常用端口为 4243,本文遵照原文,改为 5555,生产环境一定要注意该端口不要被未授权 IP 访问。
1 操作容器的api:
列出所有容器
GET /containers/json
创建新容器
POST /containers/create
检查容器
GET /containers/(id)/json
用于获取容器底层信息。
进程列表
GET /containers/(id)/top
获取容器内运行进程的列表。
容器日志
GET /containers/(id)/logs
获取容器内 stdout
和 stderr
的输出。
导出容器
GET /containers/(id)/export
相当于 docker export
,可以直接 curl
到一个镜像文件。
启动容器
POST /containers/(id)/start
停止容器
POST /containers/(id)/stop
重启容器
Restart a Container
KILL容器
POST /containers/(id)/kill
2 用于操作镜像的 Docker Remote API:
创建一个镜像
镜像可以从两个方式获取:
- 从 registry 中 pull 一个。
- 导入一个。
用法:
POST /images/create
POST /images/create?fromImage=base
获取名叫 base
的镜像。POST /images/create?fromSrc=url
从 url
导入镜像。
Flux7 这里就有一个 BUG。
shell操作中带有&
的情况下,是需要非常小心的。
图片中的命令需要改正为:curl -v -X POST "http://localhost:5555/images/create?fromImage=base&tag=latest"
从容器创建镜像
POST /commit
列出镜像
GET /images/json
插入文件
POST /images/(name)/insertPOST /images/test/insert?path=/usr&url=myurl
如图,将 url
提供的文件插入到 name
对应的镜像的 path
目录中。
删除镜像
DELETE /images/(name)
推送镜像到 registry
POST /images/(name)/push
为镜像做标签
POST /images/(name)/tag
搜索镜像
GET /images/search
查看镜像历史
GET /images/(name)/history
构建镜像
POST /build
这个需要解释一下:POST 传入的 Dockerfile 文件必须是 tar.gz
格式。或者不传入 Dockerfile,而是用 remote
参数指定一个,这种情况下不要求格式。
使用 POST 传入文件的用法:
再例如使用 remote 传入 Dockerfile 的 url
用法:
命令 # curl localhost/Dockerfile #用于展示存储Dockerfile的URIFROM ubuntuRUN mkdir /myvolRUN echo "hello world" > /myvol/greatingVOLUME /myvol命令 # curl -X POST "127.0.0.1:4243/build?t=asd&remote=http%3A%2F%2Flocalhost%2FDockerfile"命令 # docker imagesREPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZEasd latest 1946f0511bda 36 seconds ago 188.3 MB
- 8 Docker Remote API
- Docker Rest(Remote) API
- Docker Remote API
- docker remote api 调用
- Docker Remote API
- Docker Remote API 初步尝试
- Docker Remote api(一)
- Docker remote api 创建container
- Docker入门教程(八)Docker Remote API
- Docker 1.12新功能探索(8):Remote Api 1.24
- Docker Remote Api未授权访问漏洞
- java 模拟terminal通过docker remote api连接docker容器
- [开源夏令营][四] Docker remote API 之 镜像篇
- [开源夏令营][五] Docker remote API 之 容器篇
- Docker Remote API未授权访问漏洞分析和利用
- Centos 7.2下开放Docker Remote API端口
- Ubuntu 16.04中开启docker remote api的方法
- Docker Remote API未授权访问漏洞分析和利用
- 使用 XPath 解析 HTML 文档
- git tag打标签
- PHP的底层实现
- 开机就显示自己写的应用主界面
- (POJ2492)A Bug's Life <并查集判断是否同类>
- 8 Docker Remote API
- Android Studio1.5 更新到2.2.2 后 一直显示refreshing gradle project
- POJ 2196Specialized Four-Digit Numbers 简单暴力
- 你必须学会的okhttp——入门篇
- 基于JDK动态代理和CGLIB动态代理的实现Spring注解管理事务(@Trasactional)到底有什么区别。
- 一、Linux--编程基础
- Android事件分发与消费
- php自动加载类的实现 spl_autoload_register
- 二、Linux--文件I/O、文件和目录