繁体   English   中英

获取`sh:1:exec:nest:未找到`错误将nestjs部署到谷歌应用引擎

[英]getting `sh: 1: exec: nest: not found` error deploying nestjs to google app engine

我正在尝试将我的 nestjs 应用程序部署到谷歌应用程序引擎,但我得到sh: 1: exec: nest: not found错误

我的 package.json

    "main": "dist/main.js",
    "scripts": {
        "prebuild": "rimraf dist",
        "build": "nest build",
        "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
        "start": "nest start",
        "start:dev": "nest start --watch",
        "start:debug": "nest start --debug --watch",
        "start:prod": "node dist/main",
        "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
        "test": "jest",
        "test:watch": "jest --watch",
        "test:cov": "jest --coverage",
        "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
        "test:e2e": "jest --config ./test/jest-e2e.json",
        "gcp-build": "npm run build",
        "ae:deploy": "gcloud app deploy --quiet",
        "ae:browse": "gcloud app browse",
        "@nestjs/cli": "^8.0.0",
    }
       

DockerFile

FROM node:14-alpine

WORKDIR /usr/src/app
ENV NODE_ENV=production

COPY package*.json ./

RUN npm install -g @nestjs/cli@8

RUN npm install

COPY . ./

RUN npm run build

CMD [ "npm", "run", "start:prod" ]

app.yaml

runtime: nodejs14
service: default

instance_class: F1

env_variables:
  NODE_ENV: 'production'

CloudBuild.yaml

steps:
- name: "gcr.io/cloud-builders/docker"
  args:
  - build
  - "--tag=gcr.io/cmor-baas-dev/kafka-connector:latest"
  - "--file=Dockerfile"
  - .  
images:
- "gcr.io/cmor-baas-dev/kafka-connector"
timeout: 1800s

npm 运行 ae:部署

日志

我认为 Dockerfile 和 CloudBuild.yaml 文件都被忽略(我是谷歌应用引擎的新手,不确定我们是否需要这些文件)

更新

基于这里

您在 devDependencies 字段下定义的所有依赖项都将被忽略,并且不会在 App Engine 中为您的应用安装。

所以我将@nestjs/cli移动到我的 package.json 中的dependencies项,仍然是同样的错误

如果其他人来此帖子寻找答案:

需要进行两项更改:

1-将启动脚本更新为"start": "node dist/main.js"

2- 将@nestjs/clidevDependencydependency

然后它开始工作

ps 不需要 CloudBuild.yaml 或 Dockerfile

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM