Dockerfile 统一修改pip3镜像源
Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/gun
目录
1.pip3 install 安装模块时报错
Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/gunicorn/
因为pip3 install 默认使用的是pipy.org。此站点为国外的,所以经常遇到下载不下来所以切换为国内的源
以下为国内常见镜像源:
清华大学: https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:http://mirrors.aliyun.com/pypi/simple/
中国科技大学 https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:http://pypi.hustunique.com/
山东理工大学:http://pypi.sdutlinux.org/
豆瓣:https://pypi.mirrors.ustc.edu.cn/simple/
可以使用下面命令统一切换镜像源
RUN pip3 config set global.index-url http://mirrors.aliyun.com/pypi/simple/
2.运行pip3 config 发现问题2
ERROR: unknown command "config"
是因为老版本的pip3 不支持config命令
所以要在配置前更新pip3
RUN pip3 install -i Simple Index --upgrade pip
3.运行pip3更新发现问题3
WARNING: The repository located at mirrors.aliyun.com is not a trusted or secure host and is being ignored. If this repository is available via HTTPS we recommend you use HTTPS instead, otherwise you may silence this warning and allow it anyway with '--trusted-host mirrors.aliyun.com'.
报错的内容大致是说要使用https或者你让这个域名为可信任的
所以平时在网上经常看到切换镜像源安装时有类似的命令
pip3 install -i Simple Index --trusted-host mirrors.aliyun.com -r 模块名
此处我的做法是将http切换为https问题解决。
最终整体在dockerfile添加以下命令可以解决
RUN pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade pip
RUN pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
延伸:
如果是服务器上可以直接修改config来处理此问题
配置文件位置在 ~/.pip/pip.conf
如果不存在则创建文件夹
mkdir ~/.pip
添加配置 vi ~/.pip/pip.conf
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com
更多推荐
所有评论(0)