优雅:通过同时配置多个pip源,实现各种python包的成功安装

1. 背景描述

  当前pypi源存在以下的三点现状:

  • pypi.org国内访问不稳定
  • 阿里源、清华源和豆瓣源的python包更新存在差异,导致实际工作场景中需要在不同pip源之间进行切换
  • 当前公司存在自己的私有源

  之前的做法习惯于在各个源之间进行切换,或者通过-i指令临时添加pypi源。事实上可以在pip.conf文件中同时配置多个源,这样pip install的时候可以依次尝试各个源,直至寻找到可以成功安装python包的源,显然这样做解放了程序员的双手和大脑,更加优雅。

2. 同时使用多个pip源

 vim ~/.pip/pip.conf  # 如果没有该文件,需要自己手动新建

# 修改内容为
[global]
index-url=http://pypi.douban.com/simple
extra-index-url=http://mirrors.aliyun.com/pypi/simple/
    https://pypi.tuna.tsinghua.edu.cn/simple/
    http://pypi.mirrors.ustc.edu.cn/simple/
    https://download.pytorch.org/whl/cu113
    https://pypi.公司私有.net/simple

[install]
trusted-host=pypi.douban.com
    mirrors.aliyun.com
    pypi.tuna.tsinghua.edu.cn
    pypi.mirrors.ustc.edu.cn
    download.pytorch.org
    pypi.公司私有.net

3. 总结

  一劳永逸~

5. 后续

  (2024年10月13日)在利用dockerfile构建fastertransformer镜像的时候,遇到了docker base镜像和apt get install获取软件的网络问题。诸如此类问题的解决方案的思想是一致的,(必定)有国内对应的镜像。具体的解决方案如下:
  例如,原本我需要的base镜像是:

FROM nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04

  替换为:

FROM swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04

  apt-get国内源的配置方式见:

RUN sed -i s:/archive.ubuntu.com:/mirrors.tuna.tsinghua.edu.cn/ubuntu:g /etc/apt/sources.list

  另注:上述dockerfile的具体撰写方式,无需记忆。目前看来chatgpt根据用户的描述撰写dockerfile的准确率很高。如果不幸的发现某一个东西,很难获取到,又没有国内的源,那么可能这就是一个商机了。类比百度之于google;Bilibili之于youtube。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值