GCloud VM实例未启动Node应用程序

时间:2016-04-11 22:24:01

标签: node.js gcloud gcloud-node

我尝试在localhost和google VM上运行我的节点应用。如果我登录Google云虚拟机的putty \ ssh,该应用程序运行正常 并启动节点应用程序(从/ opt / app文件夹)。我可以登录浏览器并通过{external ip:port number}访问该应用程序。

如果我只是重置(或停止\启动)VM,它就不会启动应用程序。我提供了一个启动脚本来启动应用程序 在下面的文章中提到:

https://cloud.google.com/nodejs/getting-started/run-on-compute-engine#download_app

当VM尝试运行启动脚本文件时,我可以看到以下内容。这是因为失去了依赖吗? 因为如果package.json丢失了,当我尝试手动运行时它应该失败。

    Apr 11 21:15:02 my-app-instance startupscript: /tmp/tmp.XwUPXasPss: line 28: cd: /opt/app/7-gce: No such file or directory
    Apr 11 21:15:02 my-app-instance startupscript: npm install
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! install Couldn't read dependencies
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! Linux 3.16.0-4-amd64
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! argv "/opt/nodejs/bin/node" "/usr/bin/npm" "install"
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! node v4.2.2
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! npm  v2.14.7
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! path /package.json
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! code ENOPACKAGEJSON
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! errno -2
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! syscall open
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! package.json ENOENT: no such file or directory, open '/package.json'
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! package.json This is most likely not a problem with npm itself.
    Apr 11 21:15:03 my-app-instance startupscript: npm ERR! package.json npm can't find a package.json file in your current directory.

Package.json

    {
      "name": "appname",
      "version": "1.0.0",
      "description": "An interactive forum",
      "main": "server.js",
      "private": true,
      "engines": {
        "node": ">=0.12.7",
        "npm":  "2.14.12"
      },
      "dependencies": {
        "bluebird": "^3.3.4",
        "body-parser": "^1.15.0",
        "cors": "^2.7.1",
        "express": "^4.13.4",
        "jsonfile": "^2.2.3",
        "mysql": "^2.10.2",
        "socket.io": "^1.4.5"
      },
      "devDependencies": {},
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "repository": {
        "type": "git",
        "url": "app, test, ineractive"
      },
      "keywords": [
        "app",
        "test",
        "interactive"
      ],
      "author": "Srikanth",
      "license": "MIT"
    }

任何帮助将不胜感激?此外,它还会在“主管”日志中出错。

    2016-04-11 21:15:09,694 INFO exited: nodeapp (exit status 127; not expected)
    2016-04-11 21:15:10,695 INFO gave up: nodeapp entered FATAL state, too many start retries too quickly

1 个答案:

答案 0 :(得分:1)

查看日志行line 28: cd: /opt/app/7-gce: No such file or directory:在链接的说明中,它假定您的应用程序位于该目录中。但是,您似乎没有在VM上使用它,这会导致脚本的其余部分失败。