[英]Node.js child_process.exec "/bin/sh: 1: docker: not found" error
我使用“Moleculer”框架创建了一个微服务。 我使用 child_process.exec 在 shell 中运行 docker 命令。 我收到“ /bin/sh: 1: docker: not found ”错误。
const { exec } = require("child_process");
.
.
.
exec("docker --version", (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
});
尝试给出绝对路径:
exec("/usr/bin/docker --version", (err...);
但仍然得到同样的错误。
我能够使用以下方法获取节点版本:
exec("node --version", (err...);
我只是遇到了同样的问题。 原因很简单,我已经构建了一个新镜像,但是我的容器中没有 Docker 客户端,因为我只执行了docker-compose restart <CONTAINER_NAME>
而不是docker-compose stop <CONTAINER_NAME>
, docker-compose rm <CONTAINER_NAME>
和docker-compose up -d <CONTAINER_NAME>
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.