Node.js 在不重新启动docker compose的情况下安装节点包

Node.js 在不重新启动docker compose的情况下安装节点包,node.js,docker,npm,docker-compose,Node.js,Docker,Npm,Docker Compose,有没有办法在运行的docker环境中安装节点包而不重新启动? 我通过docker compose运行了一些容器,需要在容器运行时使用npm I 到目前为止,我还没有找到与google一致的答案。您可以使用docker exec在活动容器中运行任何命令。在您的情况下,它将是: // Replace <your-container-id> and <your-package-name> docker exec -it <your-container-id> &qu

有没有办法在运行的docker环境中安装节点包而不重新启动? 我通过docker compose运行了一些容器,需要在容器运行时使用
npm I


到目前为止,我还没有找到与google一致的答案。

您可以使用
docker exec
在活动容器中运行任何命令。在您的情况下,它将是:

// Replace <your-container-id> and <your-package-name>
docker exec -it <your-container-id> "npm install <your-package-name>"
//替换和
docker exec-it“npm安装”
如果要使用容器名称而不是容器id,可以使用:

// Replace <your-container-id> and <your-package-name>
docker exec -it $(docker ps | grep <your-container-name> | awk '{ print $1 }') "npm install <your-package-name>"
//替换和
docker exec-it$(docker ps | grep | awk'{print$1}')“npm安装”
这里有关于docker exec命令的更多信息。(Docker文档)


cd
到工作区并
npm安装packagename
。应安装所需的软件包,并将其添加到软件包中。json

使用
docker exec
+
npm install

这对我不起作用,因为我得到:OCI运行时exec失败:exec失败:容器\u linux。go:349:启动容器进程导致“exec:\“npm安装节点红色contrib env\”:在$PATH中找不到可执行文件:未知
docker exec -it [container-id] /bin/bash