我是码头工人的新手。我已经阅读了docker远程API中的tutorial。在创建容器方面。它向我展示了太多的填充物。我想知道什么等同于这个命令:
docker run -d -p 5000:5000 --restart = always --name registry 注册表:2
我不知道。有人能告诉我吗?谢谢!
答案 0 :(得分:9)
原始答案(2015年7月):
那将是(未直接测试),in this tutorial(提供remote API is enabled):
首先创建容器:
//create a gradient palette from green to red using RainbowVis
var rainbow = new Rainbow();
rainbow.setNumberRange(1, data.getNumberOfRows());
rainbow.setSpectrum('green', 'red');
//alter the DataTable
data.addColumn( {'type': 'string', 'role': 'style'} );
for (var i=0;i<data.getNumberOfRows();i++) {
data.setCell(i, 2, 'point { fill-color:'+rainbow.colorAt(i+1)+'}');
}
然后开始:
curl -v -X POST -H "Content-Type: application/json" -d '{"Image": " registry:2.",}' http://localhost:2376/containers/create?name=registry
更新二月é017,对于docker 1.13 +,请参阅rocksteady的answer,使用类似的想法,但使用当前的engine/api/v1.26。
答案 1 :(得分:4)
或多或少只是复制VonC的答案,以便更新到今天版本的docker (1.13)和docker remote api version (v1.26)。
有什么不同:
{"message":"starting container with non-empty request body was deprecated since v1.10 and removed in v1.12"}
首先创建容器: (包括所有配置)
curl -v -X POST -H "Content-Type: application/json" -d @docker.conf http://localhost:2376/containers/create?name=registry
文件docker.conf
如下所示:
{
"Image": registry:2.",
"ExposedPorts": {
"5000/tcp": {}
},
"HostConfig": {
"PortBindings": {
"5000/tcp": [
{
"HostPort": "5000"
}
]
},
"RestartPolicy": {
"Name": "always"
}
"AutoRemove": true
}
}
然后启动它: (参数名称不是必需的,容器名称为注册表)
curl -v -X POST -H "Content-Type: application/json" http://localhost:2376/containers/registry/start
答案 2 :(得分:1)
在Docker Engine v1.24中创建Docker容器
执行发布请求-
curl -X POST -H "Content-Type: application/json" http://DOCKER_SERVER_HOST:DOCKER_PORT/v1.24/containers/create?name=containername
在请求正文中,您可以指定JSON参数,例如
{
"Hostname": "172.x.x.x",
"Image": "docker-image-name",
"Volumes": "",
"Entrypoint": "",
"Tty": true
}
它将创建您的docker容器
启动容器
执行POST请求
curl -X POST http://DOCKER_SERVER_HOST:DOCKER_PORT/v1.24/containers/containername/start