您的位置:首页 > 本地本地

如何搭建自己的 pip 本地 cache

admin2024-07-16人已围观

如何搭建自己的 pip 本地 cache

开发Openstack相关蠢绝项目的时候经常会自己搭建测试环境,搭建测试环境少不了下载pip包,但是身在天朝,下载pipy的包总是会断开,速度非常慢,经常变更环境的同学一定深受此害,所以我决定在最近一次性解决这个问题。

于是开始着手研究pipy的东西,发现有一个比较简单的方法可以按照固定的版本缓存本地的pip包。

搭建PIP源

首先,无疑先要有个Apache环境,建立一个叫pip的目录,存放所有的pip安装包。

搭建源蔽弯的方法有两宏档闷种,一种是直接将公网的pip源下载到本地,之后用crontab定期同步就可以了,这样的好处是大而全,不好的是对于网络带宽较小的,简直就是拉锯战。

这里介绍的一种方法可能更适合于个人开发者,就是把所有的requirementst的内容全部集中起来,然后利用pip download下来做成源。

这是一个下载Pip包的脚本,我暂且称之为download.sh

#!/bin/bash

PIP_REQUIRE=”pip-requires”

CACHE_PATH=”/opt/pip”

while read LINE

do

if [[ $LINE =~ ^[a-zA-Z] ]]

then

echo $LINE

yes w | pip install $LINE –no-install -d pip -I

fi

done < $PIP_REQUIRE

其中Cache_Path为当前pip包存放的位置

<VirtualHost *:80>

ServerAdmin jimjiang@gmail.com

ServerName test.jimflying.com

DocumentRoot /opt

<Directory /opt>

Options Indexes FollowSymLinks MultiViews

AllowOverride None

Order allow,deny

Allow from all

</Directory>

ErrorLog logs/mirrors-error_log

CustomLog logs/mirrors-access_log common

</VirtualHost>

配置完apache以后服务器端完成了

vi $HOME/.pip/pip.conf

[global]

find-links =

no-index = true

vi $HOME/.pydistutils.cfg

[easy_install]

index_url =

这时候再pip install -r requirements的时候速度会变得非常快。

pipdownload原理

pipdownload原理是通过pip工具安装某个python包。根据查询相关公开信岁皮息,当用户使用命令pipinstallpip,就是会向上面的网站发送包搜索请求,找此悔到的话,会下载那个相关库对应的代码和依赖,本地编译完成以后,安装到乎扒差本地的python的安装目录。

很赞哦! ()

上一篇:外地户口的孩子能在现在自已居住地读高中吗?高考的题是不是全省一样的?'>谈谈自媒体、新媒体和融媒体

下一篇:返回列表'>返回列表

随机图文