Shipyard远程API
1、鉴权模块
1.1 Login,获取token
POST http://192.168.31.149:8080/auth/login
Headers
Content-Type: application/json
Body:
{
"username": "admin",
"password": "shipyard"
}
response
{ "auth_token": "$2a$10$kwlWJbgjkEWnN.JhHJINZOp6grcuio1.USA.io28tTLkKzuCnLl.m", "user_agent": "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0" } |
2、容器管理
2.1 获取容器列表
GET http://192.168.31.149:8080/api/containers
Headers
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0
X-Access-Token: admin:$ $2a$10$kwlWJbgjkEWnN.JhHJINZOp6grcuio1.USA.io28tTLkKzuCnLl.m
response
[ { "id": "5c12b9ad2961cba3a57947ef5a927dd01545bfe8a73785f7c3b13cb7d0704e38", "name": "/shipyard", "image": { "name": "shipyard/shipyard:latest", "entrypoint": [ "/controller" ], "hostname": "5c12b9ad2961", "bind_ports": [ { "proto": "tcp", "host_ip": "0.0.0.0", "port": 8080, "container_port": 8080 } ], "restart_policy": {}, "network_mode": "bridge" }, "engine": { "id": "compute2", "addr": "http://192.168.31.149:4243", "cpus": 4, "memory": 4096, "labels": [ "dd" ] }, "state": "running", "ports": [ { "proto": "tcp", "host_ip": "0.0.0.0", "port": 8080, "container_port": 8080 } ] }, { "id": "4a5f16641c2a5ecca0b05b399bfdaf3c62abf3681289189ee5336feeeb96b4a9", "name": "/gloomy_darwin", "image": { "name": "mysql_test:latest", "environment": { "CLOUD_URL": "http://192.168.31.147:8080/starott_cloud_client/cloud/commomconfig/" }, "hostname": "mysqls", "restart_policy": {}, "network_mode": "bridge" }, "engine": { "id": "compute2", "addr": "http://192.168.31.149:4243", "cpus": 4, "memory": 4096, "labels": [ "dd" ] }, "state": "stopped" }, |
2.2 创建容器
POST /api/containers
Headers
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0
X-Access-Token: admin:$2a$10$P8jnLva2KnYP0xWOLCmYruD0B11z0JIpH3cOnDHplxFdbBIZv.iOW
Request body
{ "name": "ehazlett/go-demo", "container_name": "demo", "cpus": 0.1, "memory": 32, "type": "service", "hostname": "", "domain": "", "labels": ["local"], "args": [], "environment": { "FOO": "bar" }, "restart_policy": { "name": "always" }, "bind_ports": [ { "host_ip": "10.1.2.3", "proto": "tcp", "container_port": 8080 }, { "proto": "tcp", "port": 80, "container_port": 8080 } ], "links": { "redis": "db" } } |
Reponse
"started_at": "2014-09-12T00:48:23.824260519Z", "pid": 5890, "running": true }
{ "container_port": 8080, "host_ip": "10.1.2.3", "port": 49172, "proto": "tcp" } ]
"labels": [ "local", "dev" ], "memory": 4096, "cpus": 4, "addr": "http://172.16.1.50:2375", "id": "local" }
"restart_policy": { "name": "always" }, "labels": [ "local" ], "bind_ports": [ { "proto": "tcp", "port": 49153, "container_port": 8080 }, { "proto": "tcp", "port": 80, "container_port": 8080 } ], "links": { "redis": "db" }, "type": "service", "memory": 32, "cpus": 0.1, "name": "ehazlett/go-demo" }
|
2.3 重启容器
GET /api/containers/<id>/restart
Restart a container
Request
GET /api/containers/3e532/restart HTTP/1.1
Response
HTTP/1.1 204 No Content
2.4 停止容器
GET /api/containers/<id>/stop
Stop a container
Request
GET /api/containers/3e532/stop HTTP/1.1
Response
HTTP/1.1 204 No Content
2.5 销毁容器
DELETE /api/containers/<id>
Destroy a container
Request
DELETE /api/containers/3e532 HTTP/1.1
Response
HTTP/1.1 204 No Content
3、计算节点管理
3.1 获取计算节点列表
GET http://192.168.31.149:8080/api/engines
Headers
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0
X-Access-Token: admin:$2a$10$P8jnLva2KnYP0xWOLCmYruD0B11z0JIpH3cOnDHplxFdbBIZv.iOW
response
[ { "id": "c589bf34-513e-4a15-8164-146511c5e177", "engine": { "id": "compute2", "addr": "http://192.168.31.149:4243", "cpus": 4, "memory": 4096, "labels": [ "dd" ] }, "health": { "status": "up", "response_time": 1375306 }, "docker_version": "1.5.0-dev" } ] |
3.2 添加计算节点
POST /api/engines
Add an engine to the cluster
Request
"id": "local", "addr": "http://10.1.2.3:2375", "cpus": 4.0, "memory": 8192, "labels": [ "local", "dev" ] }
|
Response
HTTP/1.1 201 Created
3.3 删除计算节点
DELETE /api/engines/<id>
Remove an engine from the cluster
Request
DELETE /api/engines/99095f5f-7579-4a70-9369-04ad73c21312 HTTP/1.1
Response
HTTP/1.1 204 No Content
Shipyard远程API的更多相关文章
- Confluence 6 匿名访问远程 API
Confluence 管理员可能希望为匿名用户禁用远程访问 API.这样能够避免恶意软件随意在网站进行批量修改. 希望禁用远程访问 API: 在屏幕的右上角单击 控制台按钮 ,然后选择 General ...
- Confluence 6 启用远程 API
XML-RPC 和 SOAP 远程 API 从 Confluence 5.5 开始已经废弃了.我们推荐你使用完全支持的Confluence Server REST API. 希望启用 XML-RPC ...
- 在Mac OSX系统的Docker机上启用Docker远程API功能
在Mac OSX系统的Docker机上启用Docker远程API功能 作者:chszs,未经博主同意不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs D ...
- 不依赖远程API启动SEER区块链命令行钱包和网页钱包的方法
不依赖远程API启动命令行钱包和网页钱包的方法 在SEER的见证人操作等需要使用命令行钱包的操作中,我们介绍了通过钱包连接远程API来和区块链交互的方法.类似这样: cli_wallet.exe -s ...
- 大叔也说Xamarin~Android篇~调用远程API接口,发POST请求
回到目录 Xamarin我们在上节已经教大家如何去部署它的环境了,今天来说一个实际的例子,使用android客户调用.net web api的一个接口,并发送POST请求,当服务端回到请求后做出响应, ...
- JENKINS的远程API调用,然后用PYTHON解析出最新的版本及稳定成功的版本
这个功能,我觉得在作自动作部署时,是可以派上用处的. 记录一下. import urllib f = urllib.urlopen('http://jenkinsurl/job/job_name/ap ...
- 本地调试远程api tag
当你在本地开发js且需要跨域调用远程接口的时候.可按照下列步骤设置你的chrome. 1.创建chrome快捷方式. 2.右键属性新的快捷方式,在目标一栏后面追加 "--args ...
- hbase远程api调用, 远程连接开发,环境构建相关问题总结
平时在开发的过程中,都是将hbase的环境装在虚拟机或者双系统上的,开发是直接在unix或者linux上进行的,这样对于使用上,有些繁琐. 下面我将介绍我在使用windows远程开发过程中的一些总结: ...
- 通过Hutool 调用远程API接口(POST/GET)
背景:需要调用第三方接口,开启某项任务,用Hutool代替了HttpClient 调用第三方接口,简单粗暴. 代码如下: import java.util.Date; import org.apach ...
随机推荐
- QQ拼音在中文输入下默认英文标点
别小看这个功能, 感觉在写一些技术 Blog 的情况下还是挺有用的. 打开QQ拼音: 输入法设置->基本设置->初始状态->中文状态下使用英文标点.
- 文本属性Attributes
1.NSKernAttributeName: @10 调整字句 kerning 字句调整 2.NSFontAttributeName : [UIFont systemFontOfSize:_fontS ...
- j2ee servlet listener
JSP/Servlet 中的事件处理写过AWT或Swing程序的人一定对桌面程序的事件处理机制印象深刻:通过实现Listener接口的类可以在特定事件(Event)发生时,呼叫特定的方法来对事件进行响 ...
- Error : L6218E: Undefined symbol downloadAddress (referred from nand.o).
MKD 报错: linking...LCD.axf: Error: L6218E: Undefined symbol EnZK (referred from ht128x64.o).LCD.axf: ...
- Python学习总结2:raw_input() 与 input()
参考http://www.cnblogs.com/way_testlife/archive/2011/03/29/1999283.html 1. 输入数据要求 raw_input() 直接读取控制台的 ...
- gson使用注意事项
public static Object toBean(String jsonString, Class<?> beanclass) { GsonBuilder gsonb = new G ...
- 在Tomcat里使用配置连接池连接数据库
一:首先在Tomcat下的conf/context.xml文件里的contenx标签里配置数据源: <Resource name="jdbc/zzz" auth=" ...
- java dyn proxy
package dyn; public interface RealService { void buy(); } =================== package dyn; public cl ...
- PHP与jquery前后台交互的小程序
1 <!DOCTYPE HTML> <html> <head> <meta charset = "utf-8"> <scrip ...
- paper 83:前景检测算法_1(codebook和平均背景法)
前景分割中一个非常重要的研究方向就是背景减图法,因为背景减图的方法简单,原理容易被想到,且在智能视频监控领域中,摄像机很多情况下是固定的,且背景也是基本不变或者是缓慢变换的,在这种场合背景减图法的应用 ...