繁体   English   中英

K8S 集群中的 Google FCM firebase-admin initializeApp() 错误

[英]Google FCM firebase-admin initializeApp() error in K8S cluster

我正在构建 NodeJs 服务器并尝试利用 FCM 进行推送通知。 本地一切正常,但在 K8S 集群中我收到以下错误

FirebaseAppError: Credential implementation provided to initializeApp() via the "credential" property failed to fetch a valid Google OAuth2 access token with the following error: "Error fetching access token: Missing error payload".

errorInfo: {
    code: 'app/invalid-credential',
    message: 'Credential implementation provided to initializeApp() via the "credential" property failed to fetch a valid Google OAuth2 access token with the following error: "Error fetching access token: Missing error payload".'
  },
  codePrefix: 'app'

我试图在没有参数 admin.initializeApp() 的情况下初始化应用程序,将 env var 与路径 json 键保存在一个配置对象中,路径有效,文件存在,env 打印输出正常。 我试过这样const firebase = admin.initializeApp({ credential: admin.credential.applicationDefault(), }); 这显然是同一件事。 我试图像这样使用 json 证书显式传递凭证道具const firebase = initializeApp({ credential: admin.credential.cert(cert) }); 证书存在。 我什至尝试将 firebase-admin 从 10 降级到 9。请帮助节点 12

我发现了一个问题。 这是我的 K8S 集群的 DNS 设置。 所以它没有正确访问外部世界(检查 pod 内的 /etc/resolv.conf)不得不像这样将 dns 设置添加到我的部署声明中

      containers:
        ...
      dnsPolicy: "None"
      dnsConfig:
        nameservers:
         - 10.96.0.10 // for inner services lookup
         - 8.8.8.8
        searches:
         - default.svc.cluster.local
         - svc.cluster.local
         - cluster.local

暂无
暂无

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

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