通过节点js脚本执行docker命令

Nit*_*D J 6 node.js docker docker-exec

除了使用shelljs(类似包)执行这些命令之外,还有没有更好的方法可以从节点js执行docker命令?

我看过dockerode这个包。虽然它对某些命令很有用,但它并没有对“docker exec”命令给出太多的看法。

我只需要在从 shelljs 无法提供的 nodejs 执行 docker exec 时进行更多控制。我想知道一旦 docker exec 命令被执行,它是否被成功执行。

Nit*_*D J 3

如果您想从 nodejs 脚本运行该命令,请使用 shelljs 或子进程来运行该命令并将其输出重定向到日志或 txt 文件中。并使用类似于 saerch 的函数处理文件中的错误字符串。

基本上发生的情况是,当您在 cli 中执行 docker exec 时,即使发生了 shelljs 未捕获的错误。因此无论哪种方式退出代码都将为 0。因此,这会导致普通 shell 命令和 docker exec 命令中捕获错误的差异。

我们可以使用 dockerode npm 包。我们可以使用这个特定的示例并根据我们的用例编写它。我刚刚更改了监听返回流上的事件“data”和“end”的代码。