如何解决MacOS安装gcloud时出现的CERTIFICATE_VERIFY_FAILED错误
问题诊断
你的报错核心是SSLCertVerificationError证书验证失败,和Python版本无关,是Python环境的根证书配置问题、或者网络环境存在自签证书注入,导致gcloud安装时拉取组件清单无法通过SSL校验。
解决方案
方案1:跳过安装阶段的联网组件更新,安装完成后再配置证书
- 运行安装脚本时添加
--disable-installation-options参数,跳过联网拉取组件的步骤:
sh install.sh --screen-reader=true --disable-installation-options
- 安装完成后配置gcloud信任证书:
- 先导出你网络环境的自签根证书,保存为本地路径
/path/to/your/custom.crt - 执行gcloud配置命令:
gcloud config set core/custom_ca_certs_file /path/to/your/custom.crt- 配置完成后再执行组件更新即可:
gcloud components update - 先导出你网络环境的自签根证书,保存为本地路径
方案2:修复pyenv Python的根证书配置
你当前使用pyenv管理Python版本,pyenv安装的Python默认不会自动绑定系统根证书,执行对应版本的自带证书安装脚本即可:
# 对应你当前使用的Python 3.9.1版本,其他版本替换路径中的版本号即可 /Users/joey/.pyenv/versions/3.9.1/bin/install_certificates.command
执行完成后重新运行gcloud安装脚本即可正常安装。
方案3:临时绕过SSL验证(仅推荐临时测试使用)
如果只是临时安装,可以设置环境变量关闭SSL验证后再运行安装脚本:
export CLOUDSDK_CORE_DISABLE_SSL_VALIDATION=True sh install.sh --screen-reader=true
安装完成后记得取消该环境变量,配置正确的证书避免后续出现安全风险。
依赖说明
gcloud本身不需要额外安装系统依赖,只要Python 3.5及以上版本即可,你当前的Python 3.7、3.9版本都满足版本要求。
内容的提问来源于stack exchange,提问作者Joey Yi Zhao
相关产品推荐
相关产品推荐

