【发布时间】:2022-02-21 06:40:20
【问题描述】:
node_modules 的安装顺利通过。
运行docker-compose run --rm npm run dev empty app.js 也不输出错误,一切正常编译。
如果我将它导入到 app.js 空 App.vue 没有错误,如果我添加标签或其他 html-tags,我会收到错误:
glob error [Error: EACCES: permission denied, scandir '/root/.npm/_logs'] {
errno: -13,
code: 'EACCES',
syscall: 'scandir',
path: '/root/.npm/_logs'
}
ERROR in ./resources/js/components/App.vue 1:0
Module parse failed: Unexpected token (1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> <template>
| <div class="container">
|
webpack compiled with 1 error
我在 docker-compose.xml 中安装了npm,但没有使用 dockerfile:
npm:
image: node:latest
container_name: npm
volumes:
- ./src:/var/www/html
working_dir: /var/www/html
entrypoint: ['npm']
networks:
- laravel
package.json
{
"private": true,
"scripts": {
"dev": "npm run development",
"development": "mix",
"watch": "mix watch",
"watch-poll": "mix watch -- --watch-options-poll=1000",
"hot": "mix watch --hot",
"prod": "npm run production",
"production": "mix --production"
},
"devDependencies": {
"axios": "^0.21",
"cross-env": "^7.0.3",
"laravel-mix": "^6.0.6",
"lodash": "^4.17.19",
"postcss": "^8.1.14"
},
"dependencies": {
"npm": "^7.7.5",
"zlib": "^1.0.5"
}
}
告诉我,它是如何正确的?
【问题讨论】:
-
这与 npm 无关,错误来自 webpack。你可以在“你可能需要一个合适的加载器来处理这个文件类型......”的末尾看到它为你提供了一个指向 webpack 文档的链接。
-
这个设置似乎并没有真正利用 Docker 生态系统。如果你只是在没有 Docker 的主机上运行
npm install,你会得到同样的错误吗?