试图让基本的Nodejs示例在GAE上运行

时间:2015-08-02 09:58:52

标签: node.js google-app-engine gcloud

我使用的是Windows 7x64,gcloud已安装版本

Google Cloud SDK 0.9.71

app 2015.07.24
app-engine-java 1.9.24
app-engine-python 1.9.24
app-engine-python-extras 1.9.21
bq 2.0.18
bq-win 2.0.18
core 2015.07.24
core-win 2015.07.24
gcloud 2015.07.24
gsutil 4.13
gsutil-win 4.13
preview 2015.07.24
windows-ssh-tools 2015.06.02

我尝试运行预览并从here部署教程示例。 请注意,此示例中的app.yaml具有" nodejs"设置为运行时。

运行命令后

gcloud preview app run --host localhost:8080 app.yaml

我得到了

RuntimeError: Unknown runtime 'nodejs'; supported runtimes are 'custom', 'go', 'java', 'java7', 'php', 'php55', 'python, 'python27', 'vm'.

如果我把" vm"对于运行时,它想要使用docker,这对我来说也不起作用,我想用这个选项来做without docker无论如何。

如果我把" custom"对于yaml文件中的运行时,我得到:

ValueError: The --custom_entrypoint flag must be set for custom runtimes

此开关的帮助输出中给出的示例如下

--custom_entrypoint="gunicorn -b localhost:{port} mymodule:application"

我试过这个,最好的猜测

gcloud preview app run --custom_entrypoint="nodejs -b localhost:{8080} mymodule:application" app.yaml

并得到了这个

ERROR: Argument [--custom_entrypoint=nodejs -b localhost:{8080} mymodule:application] is not a valid deployable file.
ERROR: (gcloud.preview.app.run) Errors occurred while parsing the App Engine app configuration.

感谢您的时间。

1 个答案:

答案 0 :(得分:0)

gcloud命令似乎正在进行一些更改,因此这个问题似乎不再有效,因为我们打算运行gcloud而不是runtime: custom来运行devserver进程;您也可以直接运行节点服务器,甚至使用docker从dockerfile构建映像并将其作为容器运行。

如果从dev_appserver.py运行,请确保您拥有FROM和Dockerfile源RuntimeError: Unknown runtime 'nodejs'; supported runtimes are 'custom', 'go', 'java', 'java-compat', 'java7', 'php55', 'python', 'python-compat', 'python27'. gcr.io/google_appengine/nodejs,因为dev_appserver.py目前正在提升:

if (refElement.position().top <= scrollPos && refElement.position().top + refElement.height() > scrollPos) {