pip 设置超时时间_linux中pip操作时的超时解决方法

如何解决 Linux 实例 pip 操作时的超时问题

pip 是当前最流行的 Python 安装包管理工具之一,很多阿里云用户会通过 pip 更新系统源。阿里云的 pip 源地址有以下三处:

(默认)公网:mirrors.aliyun.com

专有网络 VPC 内网:mirrors.cloud.aliyuncs.com

经典网络内网:mirrors.aliyuncs.com

现象描述

Linux 实例的 pip 请求偶有超时或者失败现象。目前,受影响的公共镜像有:

CentOS

Debian

Ubuntu

SUSE

OpenSUSE

Aliyun Linux

原因分析

pip 请求的默认访问地址为 mirrors.aliyun.com,要求访问该地址的实例能访问公网。当您的实例没有分配公网 IP 时,会出现 pip 请求超时故障。

解决方法

您可以使用以下方法中的任意一种解决问题。

方法一

为您的实例分配公网 IP,即为实例绑定一个 弹性公网 IP(EIP)。预付费实例还可以通过 升降配 重新分配公网 IP。

方法二

一旦出现 pip 响应延迟,您可以在 ECS 实例中运行脚本 fix_pypi.sh,然后再重试 pip 操作。

远程连接实例。

运行 wget http://image-offline.oss-cn-hangzhou.aliyuncs.com/fix/fix_pypi.sh 获取文件。

运行脚本:

VPC 实例:运行 bash fix_pypi.sh "mirrors.cloud.aliyuncs.com"。

经典网络实例:运行 bash fix_pypi.sh "mirrors.aliyuncs.com"。

重试 pip 操作。

以下为 fix_pypi.sh 的脚本内容:

#!/bin/bash

function config_pip() {

pypi_source=$1

if [[ ! -f ~/.pydistutils.cfg ]]; then

cat > ~/.pydistutils.cfg << EOF

[easy_install]

index-url=http://$pypi_source/pypi/simple/

EOF

else

sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pydistutils.cfg

fi

if [[ ! -f ~/.pip/pip.conf ]]; then

mkdir -p ~/.pip

cat > ~/.pip/pip.conf << EOF

[global]

index-url=http://$pypi_source/pypi/simple/

[install]

trusted-host=$pypi_source

EOF

else

sed -i "s#index-url.*#index-url=http://$pypi_source/pypi/simple/#" ~/.pip/pip.conf

sed -i "s#trusted-host.*#trusted-host=$pypi_source#" ~/.pip/pip.conf

fi

}

config_pip $1

以上就是本篇文章的全部内容知识点,感谢大家对我们的支持。

本文标题: linux中pip操作时的超时解决方法

本文地址: http://www.cppcns.com/os/linux/240857.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值