繁体   English   中英

Node.js child_process.exec "/bin/sh: 1: docker: not found" 错误

[英]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>

https://stackoverflow.com/a/63281470/1707015

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM