前言
通常我们在下载 python
包时都会选择清华源或者阿里源。但是当我们的开发环境无法访问外网的时候,就需要搭建私有源。今天我们就一起花 5
分钟时间学习如何搭建一个本地私有源。
工具选择
搭建本地私有源有很多种方案,包含但不限于 pypiserver,pip2pi,bandsnatch
,其中 pypiserver
上手难度最小,使用方便,功能简单。后两个适用于搭建企业级的源,因为其拥有自动同步包的功能。
服务搭建
下载 pypiserver
pip install pypiserver
创建包路径
mkdir ~/packages
启动服务
PS C:\Users\admin> pypi-server.exe
127.0.0.1 - - [23/Jun/2021 10:44:49] "GET / HTTP/1.1" 200 1007
127.0.0.1 - - [23/Jun/2021 10:44:54] "GET /simple/ HTTP/1.1" 200 221
127.0.0.1 - - [23/Jun/2021 10:45:25] "POST /RPC2 HTTP/1.1" 200 509
查看 web 页面
到此,服务启动完成。
准备包
首先,我们切换到 ~/packages
目录下,然后将自己的 python
包拷贝到这里,或者将已经下载好的包上传到此目录下。
我们选择直接从外源下载。
下载示例包
cd ~/packages
pip download -i https://pypi.tuna.tsinghua.edu.cn/simple simplejson
从本地源搜索
PS C:\Users\admin\packages> pip search -i http://localhost:8080 simplejson
simplejson (3.17.2) - 3.17.2
PS C:\Users\admin\packages>
安装包
安装前
PS C:\Users\admin\packages> pip show simplejson
WARNING: Package(s) not found: simplejson
PS C:\Users\admin\packages>
安装
PS C:\Users\admin\packages> pip install -i http://localhost:8080/simple simplejson
Looking in indexes: http://localhost:8080/simple
Collecting simplejson
Downloading http://localhost:8080/packages/simplejson-3.17.2-cp37-cp37m-win_amd64.whl (73 kB)
|████████████████████████████████| 73 kB ...
Installing collected packages: simplejson
Successfully installed simplejson-3.17.2
PS C:\Users\admin\packages>
安装后
PS C:\Users\admin\packages> pip show simplejson
Name: simplejson
Version: 3.17.2
Summary: Simple, fast, extensible JSON encoder/decoder for Python
Home-page: https://github.com/simplejson/simplejson
Author: Bob Ippolito
Author-email: bob@redivi.com
License: MIT License
Location: d:\python37\lib\site-packages
Requires:
Required-by:
PS C:\Users\admin\packages>
到此本地 pypi
源搭建全部结束。
Linux
上的搭建方法和Windows
基本一致。
Tip
此次试验搭建的源仅供开发使用,如果需要搭建企业级的私有源,需要定时同步官方源,建议您使用 bandsnatch
进行搭建。
以上就是今天的全部内容了,感谢您的阅读,我们下节再会。
评论区