Docker 文档非常擅长描述您可以从命令行执行的操作。
它还对与远程 API 相关的命令进行了非常全面的描述。
但是,它似乎没有提供足够的上下文来使用远程 API 来执行使用命令行会执行的操作。
我正在谈论的一个例子:假设你想做一个类似的命令:
docker run --rm=true -i -t -v /home/user/resources:/files -p 8080:8080 --name SomeService myImage_v3
使用远程 API。Remote 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 进行我在插图中展示的启动吗?
无论如何:是否有人从事 docker 开发工作,我可以将这些文档问题带到那里?我相信,这是他们文档中的一个大“漏洞”。
有人请指教...