gpt4 book ai didi

node.js - npm 错误!缺少脚本 : start error with Docker

转载 作者:IT老高 更新时间:2023-10-28 21:39:32 27 4
gpt4 key购买 nike

当运行 docker-compose 来启动我的应用程序时,我得到了一个 npm ERR!缺少脚本:开始 尽管指定了启动脚本。

package.json 是

{
"name": "myapp",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"body-parser": "~1.17.1",
"cookie-parser": "~1.4.3",
"debug": "~2.6.3",
"ejs": "~2.5.6",
"express": "~4.15.2",
"mongoose": "^4.11.1",
"morgan": "~1.8.1",
"serve-favicon": "~2.4.2"
}
}

而 docker-compose.yml 是

version: "2"
services:
web:
build: .
volumes:
- ./:/app
ports:
- "3500:3500"

2 件事对我来说没有意义:

  1. 使用其 Dockerfile 启动应用程序有效:如果缺少启动脚本确实是问题所在,那么这不应该也失败吗?
  2. 如上所示,package.json 确实有一个启动脚本

不确定是否需要,但 Dockerfile 是

FROM node:argon

RUN mkdir /app

WORKDIR /app

COPY package.json /app

RUN npm install

COPY . /app

EXPOSE 3500

ENV PORT 3500
CMD ["npm", "start"]

编辑:我正在使用 docker run -p 3500:3500 appdocker-compose up

我是新手,所以可能会遗漏一些东西,但现在有点卡住了。

最佳答案

您可以尝试删除卷部分- ./:/app
看起来/app 是在容器中创建的,但随后您将主机目录挂载到/app,从而将原始/app 隐藏在容器中。

关于node.js - npm 错误!缺少脚本 : start error with Docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45001168/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com