内网通过pip安装有依赖的whl包经常会出现各种异常,一劳永逸的方法是搭建内网私有pip源
私有源只需要有所需的包就够了
- 私有源主机最好有python3环境(自行安装好)
- 在有网络的机器执行 pip3 download -d D:\temp\packages pip2pi 会在该目录下载最新的pip包和pip2pi包
- 在私有源主机通过 pip3 install 安装这两个包 并 find / -name commands.py
- 编辑 /usr/local/python3/lib/python3.8/site-packages/libpip2pi/commands.py
- 头部引入
并替换所有 cgi.escape 为 html.escape (共3个)import html
- 私有源主机 mkdir -p /mnt/cdrom/pypi/Packages
- 在有网的主机,通过pip3 download下载包,然后上传到私有源主机Packages目录
- 私有源主机创建索引 dir2pi /mnt/cdrom/pypi/Packages
- (dir2pi命令如果报找不到,需要添加PATH路径 export PATH=/usr/local/bin:/usr/local/python3/bin:$PATH)
- 通过nginx代理这个路径即可
- pip3 install --trusted-host 192.168.10.119 -i http://192.168.10.119/simple ipcalc
- 在内网主机(pip3 config set global.index-url http://192.168.10.119/simple)添加默认源,编辑生成的/root/.config/pip/pip.conf 增加一行 trusted-host = 192.168.10.119
参考文章
python搭建本地pip源,离线安装python模块