node.js - Docker compose : npm ERR! 缺少脚本:构建

标签 node.js docker

您好,我不知道在尝试将 docker compose 与 postgress 一起使用时我错在哪里

docker 撰写 yml:

version: "3.7"
services:
  db:
    image: postgres
    environment:
      POSTGRES_PASSWORD: postgres
      POSTGRES_USER: postgres
      POSTGRES_DB: emasa
    volumes:
      - ./pgdata:/var/lib/postgresql/data
    ports:
      - "5432:5432"
    web:
      image: emasapg
      depends_on:
        - dbs
      ports:
        - "4000:4000"

dockerfile
FROM node as builder
WORKDIR usr/app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build


FROM node
WORKDIR usr/app
COPY package*.json ./
RUN npm install --production

COPY --from=builder /usr/app/dist ./dist

COPY ormconfig.docker.json ./ormconfig.json
COPY .env . 

expose 4000
CMD node dist/src/index.js

我的 package.json:
{
  "name": "back-end",
  "version": "0.0.1",
  "description": "Awesome project developed with TypeORM.",
  "devDependencies": {
    "@types/express": "^4.17.3",
    "@types/graphql": "^14.5.0",
    "@types/node": "^13.9.1",
    "ts-node": "8.6.2",
    "typescript": "3.3.3333"
  },
  "dependencies": {
    "apollo-server-express": "^2.11.0",
    "express": "^4.17.1",
    "graphql": "^14.6.0",
    "pg": "^7.3.0",
    "reflect-metadata": "^0.1.13",
    "typeorm": "0.2.24"
  },
  "scripts": {
    "start": "ts-node src/index.ts"
  }
}

呃:

npm ERR! missing script: build



我的文件结构:

enter image description here

错误从这一行开始:

line 6 : RUN npm run build



编辑 :忘记将 package.json 添加到问题中

最佳答案

它基本上是在提示缺少构建脚本,它会尝试运行它,但是在您的 package.json 中缺少它!

我认为您应该尝试更新您的package.json文件并添加构建脚本:

{
  "name": "back-end",
  "version": "0.0.1",
  "description": "Awesome project developed with TypeORM.",
  "devDependencies": {
    "@types/express": "^4.17.3",
    "@types/graphql": "^14.5.0",
    "@types/node": "^13.9.1",
    "ts-node": "8.6.2",
    "typescript": "3.3.3333"
  },
  "dependencies": {
    "apollo-server-express": "^2.11.0",
    "express": "^4.17.1",
    "graphql": "^14.6.0",
    "pg": "^7.3.0",
    "reflect-metadata": "^0.1.13",
    "typeorm": "0.2.24"
  },
  "scripts": {
    "start": "ts-node src/index.ts",
    "build": ""  // your build script goes here, "tsc" should be fine
  }
}

关于node.js - Docker compose : npm ERR! 缺少脚本:构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60728097/

相关文章:

node.js - Jest 模拟子模块功能

json - 在node.js中获取json输出(使用elasticsearch和express作为Web框架)

node.js - 在 EC2/Nodejs 后端 Redis/Varnish 中存储元数据和缓存 api 响应数据?

docker - 使用 docker stack 进行卷安装

docker - 为什么IBM Container Service中的docker pull和docker build有区别?

javascript - 在 AWS 上运行的 Node.JS 应用程序性能问题

node.js - 我无法使用 result.ops 方法查看使用 insertMany 插入的所有文档

docker - 如何处理 make missing from alpine docker image?

azure - 是否可以在 azure VM 中运行 Docker CE?

postgresql - Docker compose postgresql 服务 - 在构建期间无法创建用户和数据库?