搭建本地pip源


搭建本地的pip源

开发环境部署机器的时候, 每次从网上下载pip包会很慢, 将需要的包和相关依赖下载到本地, 搭建一个本地源服务器。

基本都是安装多个包, 推荐使用文件的方式,
文件内容格式, 可以指定版本package==1.0.0, 也可以不指定package, 每个包名在一行:

package==1.0.0
package==1.0.0
package==1.0.0

安装pip2pi工具

安装pip install pip2pi, pip2pi中包含很多相关的命令。

在指定目录下创建存放源文件的目录

mkdir ~/pypi

下载包

下载单独包pip2tgz path package==1.0, 可以指定版本, 默认是最新的包

批量下载pip2tgz path -r requirements.txt

建立索引

dir2pi path, 会创建simple文件夹

更新索引

多个包: pip2acmeco -r requirements.txt

单个包: pip2acmeco package==1.0.0

搭建服务器

使用nginx, sudo yum install nginx, 修改配置文件sudo vim /etc/nginx/nginx.conf

server {
    listen 80;
    server_name ip或域名;
    root path;
    location /{
        autoindex on;
        autoindex_exact_size off; #显示文件的大小
        autoindex_localtime on; #显示文件时间
        #limit_rate_after 5m; #5分钟后下载速度限制为200k
        limit_rate 200k;
    }
    access_log /var/log/nginx/pypi.log main;
}

修改user xxxpath文件夹的用户和组名user name group.

使用sudo nginx -t查看配置文件是否正确

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

重启nginx服务器sudo systemctl restart nginx

访问pypi/simple403错误, 查看ps -ef | grep nginx显示的worker process是否是和pypi文件夹的权限一致, 如果不一致, 修改nginx.conf, 修改user xxx为, user name group, namegrouppypi的文件夹用户和组.

使用搭建的pypi源

全局配置pip源

编辑~/.pip/pip.conf文件:

[global]
index-url=http://ip:port/pypi/simple

虚拟环境pip源

编辑虚拟环境中venv/pip.conf:

[global]
index-url=http://ip:port/simple
[install]
trusted-host=ip

示例

sudo yum install -y epel-release
sudo yum install -y mysql-devel
sudo yum install -y nginx

sudo pip install --upgrade pip
sudo pip2tgz /home/pypi/ -r requirements.txt
sudo dir2pi /home/pypi
sudo pip2acmeco -r requirements.txt


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM