Docker文档非常擅长描述您可以从命令行执行的操作。
它还提供了与远程API相关的命令的非常全面的描述。
但是,它似乎没有提供足够的上下文来使用远程API来执行使用命令行执行的操作。我正在谈论的一个例子:假设您想要执行如下命令:
docker run --rm=true -i -t -v /home/user/resources:/files -p 8080:8080 --name SomeService myImage_v3
使用远程API。有一个容器"运行"远程API中的命令:
POST /containers/(id or name)/start
此命令返回创建容器命令,该命令用于为了实际启动而需要添加的相当长的JSON字符串列表。
这里的问题是:首先,只是调用此命令不起作用。显然你需要做的更多(我猜你必须做一个创造,然后开始)。其次,不清楚您需要使用哪些JSON字符串来执行我在命令行中显示的内容(如设置端口,映射到外部目录等)。远程API文档中提供的JSON字符串不不仅与命令行参数对齐(至少,不是以任何明显的方式!),但不清楚需要哪些JSON字符串对于创建(假设我们必须创建一个尚未建立的创建!)以及开始所需的创建。
这与启动容器有关。假设您要停止并销毁容器,如:
docker stop SomeService
docker rm SomeService
当然,在远程API中似乎有一对一的命令:
POST /containers/(id or name)/stop
POST /containers/(id or name)/kill
但似乎您传递的ID与列出容器或图像时显示的ID不对应。
我是否可以去某处收集有关如何设置和使用远程API命令的信息,这些命令将这些命令及其JSON参数与命令行中的命令和参数相关联?
如果不这样,有人可以告诉我如何使用远程API在我的插图中显示的开始???
无论如何:是否有人在开发码头工作器时我可以将这些文档问题带到哪里?我相信,它是一个很大的洞。在他们的文件中。
有人请指教......
答案 0 :(得分:0)
IO Either
是docker run
的组合,后跟docker create
,因此https://docs.docker.com/engine/reference/api/docker_remote_api_v1.22/#create-a-container,后跟https://docs.docker.com/engine/reference/api/docker_remote_api_v1.22/#start-a-container
如果您以“交互方式”运行,则可能需要在此之后附加到容器; https://docs.docker.com/engine/reference/api/docker_remote_api_v1.22/#attach-to-a-container