如何解决Cloud Run 错误:容器无法启动无法启动然后侦听 PORT 定义的端口
运行此代码一切正常。
require('dotenv').config();
const express = require('express');
const Firestore = require('@google-cloud/firestore');
const path = require('path');
const app = express();
app.get('/',function (req,res) {
console.log('hello-cloud-run','request received');
const target = process.env.TARGET || 'Juan';
res.send(`Hello ${target} from Notch - Shopify Webhooks!`);
});
const port = process.env.PORT || 8080;
app.listen(port,() => {
console.log('Webhook app listening on port ',port);
});
但是,如果我添加 Firestore 行(以 const db = 开头的行),我会收到 Cloud Run 错误:Container failed to start。无法启动然后侦听由 PORT 环境变量定义的端口。此修订的日志可能包含更多信息。
require('dotenv').config();
const express = require('express');
const Firestore = require('@google-cloud/firestore');
const path = require('path');
const app = express();
const db = new Firestore({
projectId: 'kuracao-db',keyFilename: path.join(__dirname,process.env.GOOGLE_APPLICATION_CREDENTIALS)
});
app.get('/','request received');
const target = process.env.TARGET || 'Juan';
res.send(`Hello ${target} from Notch - Shopify Webhooks!`);
});
const port = process.env.PORT || 8080;
app.listen(port,port);
});
为什么添加 Firestore 数据库会导致 Cloud Run 错误?
错误:(gcloud.run.deploy) Cloud Run 错误:容器无法启动。无法启动然后侦听由 PORT 环境变量定义的端口。此修订的日志可能包含更多信息。
FROM node:14
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
CMD ["npm","start"]
解决方法
我变了
<div class="wrapper">
<div class="box a">A</div>
<div class="box b">B</div>
<div class="box c">C</div>
<div class="box c">D</div>
<div class="box c">C</div>
<div class="box c">D</div>
</div>
到
const db = new Firestore({
projectId: 'kuracao-db',keyFilename: path.join(__dirname,process.env.GOOGLE_APPLICATION_CREDENTIALS)
});
它有效,现在我想知道为什么。从 Cloud Run 运行时不需要凭据?有道理,但这与端口错误有什么关系?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。