🔨
.devcontainer/Dockerfile で npm install して not found となったとき
問題
.devcontainer/Dockerfile
で RUN npm install
と記述したところビルド時にエラーが発生しました。
npm ERR! enoent ENOENT: no such file or directory, open '/hoge/package.json'
原因はビルドコンテキストがデフォルトの .devcontainer/
であったため、上位のディレクトリの package.json
が読み込めなかったためでした。
解決策
.devcontainer/devcontainer.json
に context の設定を加えるとエラーなくビルドされるようになりました。
.devcontainer/devcontainer.json
{
"build": {
"context": "..",
"dockerfile": "Dockerfile"
}
}
参考
Discussion