前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >搭建本地私有pip源「建议收藏」

搭建本地私有pip源「建议收藏」

作者头像
全栈程序员站长
发布2022-08-30 19:09:04
3.5K0
发布2022-08-30 19:09:04
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

目的

1、用于内网内的pip安装

2、整理个人使用的python第三方库

3、个人开发公用库

搭建环境

1、centos7

2、python2/python3

搭建步骤(python2相同)

1、安装python3.7

下载地址:https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tar.xz

代码语言:javascript
复制
解压
tar -xvJf  Python-3.7.2.tar.xz

创建编译安装目录
mkdir /usr/local/python3 

安装
cd Python-3.7.9
./configure --prefix=/usr/local/python3 --enable-optimizations --with-ssl 
#第一个指定安装的路径,不指定的话,安装过程中可能软件所需要的文件复制到其他不同目录,删除软件很不方便,复制软件也不方便.
#第二个可以提高python10%-20%代码运行速度.
#第三个是为了安装pip需要用到ssl,后面报错会有提到.
make && make install

创建软链接
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

验证是否成功
python3 -V
pip3 -V

2、安装 pip2pi

代码语言:javascript
复制
在线安装
pip install pip2pi

离线安装
下载地址:https://pypi.doubanio.com/packages/9d/ad/47acabb00573eb0694fc8f9f1ca12d1d59220d35eb9f4d499ad445a66f17/pip2pi-0.8.1.tar.gz#sha256=135426f29a61d79e65ce27cd8b0eb2d738baeb8a9fb688f7fceb4878af878981

pip install   --no-index   --find-links=/home/   pip2pi

查看/usr/local/python3/bin
pip2pi  pip2tgz dir2pi
pip2tgz 用来同步官方网站软件包到本地
dir2pi 用来对本地的软件包创建索引

3、同步软件包

代码语言:javascript
复制
1、创建目录
mkdir  /work/pypi/Packages/

2、同步单个软件包
pip2tgz /work/pypi/Packages requests

3、批量同步
pip2tgz /work/pypi/Packages -r requirements.txt

注意:上述通过pip2tgz同步操作要保证有可以用的公网pip源,也可以通过pip直接下载包然后放在/work/pypi/Packages/目录下pip仅下载包:pip install   --download  /tmp pip2pi

4、创建索引

代码语言:javascript
复制
dir2pi /work/pypi/Packages/
搭建本地私有pip源「建议收藏」
搭建本地私有pip源「建议收藏」

5、安装web应用–nginx

安装nginx

代码语言:javascript
复制
基础环境安装
gcc 安装
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++

PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:
yum install -y pcre pcre-devel

zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel

OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel

nginx安装
下载:wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
解压:tar -zxvf nginx-1.12.0.tar.gz
切换目录:cd nginx-1.12.0
安装:
./configure

make
make install

启动、停止、加载
cd /usr/local/nginx/sbin/
./nginx 
./nginx -s stop
./nginx -s quit
./nginx -s reload

配置文件

代码语言:javascript
复制
切换目录
/usr/local/nginx/conf/nginx.conf

    server {
        listen       *:80;
        server_name  localhost;
        root /work/pypi/Packages;
        autoindex on;
        charset utf-8;
    }


重启 nginx
./nginx -s reload

6、访问simple

搭建本地私有pip源「建议收藏」
搭建本地私有pip源「建议收藏」

7、测试机上使用私有pip库安装软件

代码语言:javascript
复制
pip install pytest -i http://10.12.104.220/simple/ --trusted-host 10.12.104.220
搭建本地私有pip源「建议收藏」
搭建本地私有pip源「建议收藏」

安装软件若有报错

ERROR: Could not find a version that satisfies the requirement colorama; sys_platform == “win32” (from pytest) (from versions: none) ERROR: No matching distribution found for colorama; sys_platform == “win32” (from pytest)

说明私有库中缺少colorama,同步并创建索引即可

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144960.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档