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

搭建本地私有pip源「建议收藏」目的1、用于内网内的pip安装2、整理个人使用的python第三方库3、个人开发公用库搭建环境1、centos72、python2/python3搭建步骤(python2相同)1、安装python3.7下载地址:https://www.python.org/ftp/python/3.7.9/Python-3.7.9.tar.xz解压tar-xvJfPython-3.7.2.tar.xz创建编译安装目录mkdir/usr/local/python3

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

目的

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

解压
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

在线安装
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、同步软件包

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、创建索引

dir2pi /work/pypi/Packages/

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

5、安装web应用–nginx

安装nginx

基础环境安装
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

配置文件

切换目录
/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源「建议收藏」

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

pip install pytest -i http://10.12.104.220/simple/ --trusted-host 10.12.104.220

搭建本地私有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,同步并创建索引即可

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • Linux下重启tomcat

    linux重启tomcat命令1,进入到tomcat的bin目录下使用ls命令,查看自己的目录文件cd/opt/tomcat_test/bin/(cd后面接自己的环境目录)2、启动tomcat运行bin目录下的启动命令脚本shstartup.sh或者./startup.sh这样tomcat就启用了3.查看tomcat进程是否启动使用psaux|greptomca…

  • abstract修饰方法总结

    abstract修饰方法总结abstract这种方法修饰,主要用在抽象类和抽象方法.抽象的类是不可实例化的比如publicabstractclassTest{}他能够含有抽象的方法publicabstractclass

  • IOS-导航路线_iphone导航

    IOS-导航路线_iphone导航1.可以将需要导航的位置丢给系统自带的APP进行导航2.发送网络请求到公司服务器获取导航数据,然后自己手动绘制导航3.利用三方SDK实现导航(百度)>当点击开始导航时获取用户输入的起点和

  • 新建一个vue项目[通俗易懂]

    新建一个vue项目[通俗易懂]1.npm install -g vue-cli2.vue init webpack demo1demo1自定义项目名称创建成功后可以在目录下看到文件夹3.static文件夹用于存放一些静态资源,如图片图标等4. 组件存放在src/components文件夹中5.配置路由 ①package.json里查看”dependencies”是否有:”vue-router”: “^3.0.1″,没有就加上去 ②”src”目录下main.js是否引入路由,没有就加上 …

  • labelme使用教程_labelme和labelimg区别

    labelme使用教程_labelme和labelimg区别LabelMe可用于实例分割,语义分割,目标检测,分类任务的数据集标注工作。在线标注版本:http://labelme2.csail.mit.edu/Release3.0/index.php?message=1python版本:https://github.com/wkentaro/labelme分类标注:Classification目标检测标注:ObjectDetection语义分割标注:SemanticSegmentation实例分割标注:InstanceSegmentation视频

  • 智能家居简单实现—使用ESP8266简单实现和APP通讯

    智能家居简单实现—使用ESP8266简单实现和APP通讯前段时间,公司利用ESP8266这个WiFi模块,做了好多小产品。从手机APP直连这个ESP8266进行通讯,再到实现远程控制。中间实现过程磕磕碰碰,虽然这方面已经做得非常成熟,但是网上的资料少之又少。现在把实现方式展示出来,同时也算是做一个笔记。首先这里要实现的是Android端的APP直连ESP8266进行双向通讯。如果想了解Android端的APP远程连接与ESP8266…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号