基于PyPIServer创建私有Python软件包存储库
类别: Python 标签: Python pip PyPI PyPIServer Docker htpasswd目录
服务端
拉取PyPIServer镜像
docker pull pypiserver/pypiserver:latest
部署PyPIServer
- 只用于客户端下载(用作缓存加速)
docker run -d --restart=always --name pypiserver -p 8080:8080 \ -v /data/pypi-packages/:/data/packages \ pypiserver/pypiserver:latest
- 客户端不仅可以下载还可以上传(当我们自己开发了Python的软件时)
#创建用户名和密码 sudo apt install apache2-utils -y sudo mkdir /data/pypi-packages sudo htpasswd -sc /data/pypi-packages/htpasswd.txt wjj #当您需要再创建用户名时就不需要加参数 -c sudo htpasswd -s /data/pypi-packages/htpasswd.txt test #容器部署 docker run -d --restart=always --name pypiserver -p 8080:8080 \ -v /data/pypi-packages/:/data/packages \ pypiserver/pypiserver:latest -P /data/packages/htpasswd.txt
下载软件包到私有存储库(局域网内加速)
sudo pip3 download -d /data/pypi-packages/ tensorflow -i https://mirrors.aliyun.com/pypi/simple/
sudo pip3 download -d /data/pypi-packages/ -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
客户端
使用私有存储库安装软件包
- 配置
pip.conf
nano ~/.config/pip/pip.conf
[global] index-url = http://172.16.33.174:8080/simple/ extra-index-url = https://mirrors.aliyun.com/pypi/simple/ [install] trusted-host = 172.16.33.174
- 安装
pip3 install tensorflow
Looking in indexes: http://172.16.33.174:8080/simple/, https://mirrors.aliyun.com/pypi/simple/ Collecting tensorflow Downloading http://172.16.33.174:8080/packages/tensorflow-2.4.0-cp38-cp38-manylinux2010_x86_64.whl (394.8 MB)
上传开发的软件包到私有存储库
- 配置
.pypirc
nano ~/.pypirc
[distutils] index-servers = local [local] repository: http://172.16.33.174:8080 username: wjj password: 123456
- 上传
pip3 install twine twine upload onnxruntime_gpu-1.6.0-cp38-cp38-linux_x86_64.whl -r local twine upload onnxruntime_gpu-1.6.0-cp38-cp38-linux_x86_64.whl --repository-url http://172.16.33.174:8080/