【发布时间】:2023-02-04 07:46:16
【问题描述】:
我正在寻找一种使用 docker run 命令初始化项目的方法。我将使用节点作为示例。
试图
这是我试过的命令。
docker run --rm -it -v "$PWD":/usr/app -w "/usr/app" --name foo_bar node:lts "npm init"
然而,这会导致此错误。
node:internal/modules/cjs/loader:1050
throw err;
^
Error: Cannot find module '/npm init'
at Module._resolveFilename (node:internal/modules/cjs/loader:1047:15)
at Module._load (node:internal/modules/cjs/loader:893:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
Node.js v18.14.0
不确定为什么它会抱怨'/npm init',所以也欢迎解释这里到底出了什么问题。
预期结果
npm init cli 工具将开始要求我设置项目名称、版本等,以下输出将位于我当前的输出目录中。
我尝试了命令的变体
docker run --rm -it -v "$PWD":/usr/app -w "/usr/app" --name foo_bar node:lts bash
这将我连接到我运行 npm init 以创建有效项目的容器,但我想一次性完成这些。
【问题讨论】:
-
没有引号
"npm init"它按预期工作docker run --rm -it -v "$PWD":/usr/app -w "/usr/app" --name foo_bar node:lts npm init