【问题标题】:gcloud crashed (SSLHandshakeError) in gcloud app deploygcloud 在 gcloud 应用程序部署中崩溃 (SSLHandshakeError)
【发布时间】:2018-02-23 14:02:53
【问题描述】:

由于我从今天早上开始出现以下错误,因此无法部署我的应用程序。 我试过gcloud info --run-diagnosticsgcloud components reinstall 没有太多帮助。

我尝试使用旧的Google App Engine Launcher for Windows 部署它,但遇到了同样的错误。 早些时候,它使用 gcloud 一直工作到昨天晚上(IST)。请帮忙!

我使用最新的 gcloud sdk 并更新了它的所有组件。我用的是Win10。我也尝试重新启动我的笔记本电脑。

C:\gaurav\coding\python\myapp\myapp\dist>gcloud app deploy --project=myproject --version 1 --verbosity=info ./app.yaml
INFO: Refreshing access_token
ERROR: gcloud crashed (SSLHandshakeError): [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)

If you would like to report this issue, please run the following command:
  gcloud feedback

To check gcloud for common problems, please run the following command:
  gcloud info --run-diagnostics

C:\gaurav\coding\python\myapp\myapp\dist>

诊断输出。

C:\gaurav\coding\python\myapp\myapp\dist> gcloud info --run-diagnostics
Network diagnostic detects and fixes local network connection issues.
Checking network connection...done.
ERROR: Reachability Check failed.
    Cannot reach https://accounts.google.com (SSLHandshakeError)
    Cannot reach https://cloudresourcemanager.googleapis.com/v1beta1/projects (SSLHandshakeError)
    Cannot reach https://www.googleapis.com/auth/cloud-platform (SSLHandshakeError)
Network connection problems may be due to proxy or firewall settings.


Do you have a network proxy you would like to set in gcloud (Y/n)?  n

ERROR: Network diagnostic (0/1 checks) failed.


C:\gaurav\coding\python\myapp\myapp\dist>

虽然gcloud info --run-diagnostics 抱怨这三个 URL 不可访问。我可以从网络浏览器打开它们。

【问题讨论】:

    标签: python-2.7 google-app-engine gcloud


    【解决方案1】:

    最近的 GAE 和 GCloud SDK 版本中的一个问题是存在无效的 SSH 证书,例如,请参阅 Google App Engine SSL Certificate Errorissue 38338974

    您可以尝试使用我在上述帖子中建议的解决方案,并将您的 SDK 证书文件替换为有效的证书文件(必须为 gcloud SDK 找到一个好的证书文件,我的答案是针对 GAE SDK)。

    可能还可以使用gcloud config 命令将core custom_ca_certs_file 可配置属性设置为指向具有最新证书的文件(如果有的话)。我没试过,YMMV。

    【讨论】:

    • 这在 Ubuntu(Linux 的 Windows 子系统)中对我有用,在将 SSL 拦截证书添加到主证书存储后:gcloud config set custom_ca_certs_file /etc/ssl/certs/ca-certificates.crt
    【解决方案2】:

    我发现在使用 Fiddler(用于查看网络流量)并启用解密 https 流量时,我收到了 SSLHandshakeError。

    停止工具(或选择不解密 https 流量)然后运行 ​​gcloud 导致成功。


    根据 cmets 的说法,Charles 等其他 Web 调试代理也存在问题。

    【讨论】:

    • 您是否建议使用我笔记本电脑上安装的附加证书,代理或其他东西可能正在解密和重新加密我的数据包?
    • 可能。您是否尝试过@Dan Cornilescu 的修复?
    • 没有。我的笔记本电脑大约在同一时间更换。然后我开始使用 Cloud Shell 进行部署。
    • 我和查尔斯也一样!深夜,我没听清:)谢谢你的建议。
    【解决方案3】:

    我遇到了同样的问题,从运行命令时获得的一个 google url 下载了 root/intermediate certgcloud info --run-diagnostics 并附加到正在使用的 cacerts.txt 文件中。在我的情况下,它是以下一个:google-cloud-sdk/lib/third_party/httplib2/python2/httplib2/cacerts.txt

    【讨论】:

      【解决方案4】:

      在 MacOS High Sierra 上升级到 Python 2.7.9 为我解决了这个问题。

      【讨论】:

        【解决方案5】:

        我在 MacOS Mojave 上安装谷歌云 SDK 时遇到了这个问题。我不支持公司代理,网络上的所有答案似乎都表明这是问题所在。我在 install.sh 脚本中注意到它需要一个环境变量 CLOUDSDK_PYTHON 用于 python 可执行文件。所以,我通过将路径导出到我的 python 3 可执行文件来解决这个问题。

        就我而言: export CLOUDSDK_PYTHON=/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6

        此后安装按预期进行。

        【讨论】:

          【解决方案6】:

          对我来说,这是 python 版本的冲突。 gcloud 正在调用不同的版本。解决方案是将CLOUDSDK_PYTHON 设置为指向正确的python(在本例中为python2)。

          【讨论】:

            【解决方案7】:

            在 MacOS Catalina 上,解决方案是完全 uninstall gcloud 和 reinstall it。

            【讨论】:

              【解决方案8】:

              我尝试部署 gcloud,但出现此错误。这是我修复它的方法:

              1. 使用 Firefox 访问 Google 云

              2. 下载证书。 pem文件和链文件

              3. 将它们附加到位于以下位置的cert.pemC:\Program Files\google-cloud-sdk\lib\third_party\certifi\cert.pem (使用此您正在创建基于您的代理的自定义 CA 证书文件)

              4. 按照此处所述更新证书文件:https://cloud.google.com/sdk/gcloud/reference/config/set (自定义 CA 证书文件的绝对路径。)

              确保路径末尾有cert.pem

              【讨论】:

                【解决方案9】:

                我通过从apt-get 安装gcloud 解决了这个问题。指南在此link

                【讨论】:

                  猜你喜欢
                  • 1970-01-01
                  • 1970-01-01
                  • 2020-01-14
                  • 2017-01-24
                  • 1970-01-01
                  • 2019-08-26
                  • 1970-01-01
                  • 2019-10-26
                  • 1970-01-01
                  相关资源
                  最近更新 更多