基于nexus3配置Python仓库过程详解

搭建Python私服,我们依旧使用nexus3。

与其他私服一样的,Python私服同样有三种类型:

hosted : 本地存储,便于开发者将个人的一些包上传到私服中proxy : 提供代理其他仓库的类型,如豆瓣的pypi仓库group : 组类型,实质作用是组合多个仓库为一个对外的地址

那么就来一个一个创建。

1,创建blob存储

为其创建一个单独的存储空间。

2,创建hosted类型的pypiName: 定义一个名称local-pypiStorage
Blob store,我们下拉选择前面创建好的专用blob:pypi-hub。Hosted

开发环境,我们运行重复发布,因此Delpoyment policy 我们选择Allow redeploy。这个很重要!

3,

创建一个proxy类型的pypi仓库Name: proxy-pypiProxyRemote Storage: 远程仓库地址,这里填写: http://pypi.python.org/pypi/
上边的是官方的仓库地址,还有其他几个国内常见的,罗列如下:阿里云:http://mirrors.aliyun.com/pypi/中国科技大学:https://pypi.mirrors.ustc.edu.cn/豆瓣:http://pypi.douban.com/清华大学:https://pypi.tuna.tsinghua.edu.cn/中国科学技术大学:http://pypi.mirrors.ustc.edu.cn/Storage: pypi-hub。

其他的均是默认。

整体配置截图如下:

另外几个仓库同上操作,一一创建,当然也不必全部都加,根据自己实际需求添加即可。

4,创建一个group类型的pypi仓库Name:group-pypiStorage:选择专用的blob存储pypi-hub。group : 将左边可选的4个仓库,添加到右边的members下。

整体配置截图如下:

这些配置完成之后,就可以使用了。

5,验证使用1,指定配置

新建一台环境干净的主机,安装好Python的pip环境。可通过如下命令进行安装:

yum -y install epel-releaseyum -y install python36 python36-devel

然后通过命令行随便安装一个包,安装的时候,将代理指向我们的私服来。这个地方遇到了两个坑,这里用两个注意来进行提醒。

注意:在指定刚刚配置的私服时,需要在统一对外的地址最后加上一个simple。注意: 在第一次进行安装测试的时候,一定要指定测试包的版本,否则可能会报如下错误:

代码如下:

ERROR: Could not find a version that satisfies the requirement django (from versions: none)ERROR: No matching distribution found for django

这个时候指定一下包的版本,就下载成功了,而在往后的下载,就不需要指定版本了。

通过如下命令进行验证:

[root@master ~]# pip3 install --trusted-host 192.168.75.11 -i http://192.168.75.11:8081/repository/group-pypi/simple flask
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
Collecting flask
 Downloading http://192.168.75.11:8081/repository/group-pypi/packages/flask/1.1.2/Flask-1.1.2-py2.py3-none-any.whl (94kB)
  100% |████████████████████████████████| 102kB 7.8MB/s
Collecting Werkzeug>=0.15 (from flask)
 Downloading http://192.168.75.11:8081/repository/group-pypi/packages/werkzeug/1.0.1/Werkzeug-1.0.1-py2.py3-none-any.whl (298kB)
  100% |████████████████████████████████| 307kB 49.6MB/s
Collecting Jinja2>=2.10.1 (from flask)
 Downloading http://192.168.75.11:8081/repository/group-pypi/packages/jinja2/2.11.2/Jinja2-2.11.2-py2.py3-none-any.whl (125kB)
  100% |████████████████████████████████| 133kB 69.8MB/s
Collecting click>=5.1 (from flask)
 Downloading http://192.168.75.11:8081/repository/group-pypi/packages/click/7.1.2/click-7.1.2-py2.py3-none-any.whl (82kB)
  100% |████████████████████████████████| 92kB 6.6MB/s
Collecting itsdangerous>=0.24 (from flask)
 Downloading http://192.168.75.11:8081/repository/group-pypi/packages/itsdangerous/1.1.0/itsdangerous-1.1.0-py2.py3-none-any.whl
Collecting MarkupSafe>=0.23 (from Jinja2>=2.10.1->flask)
 Downloading http://192.168.75.11:8081/repository/group-pypi/packages/markupsafe/1.1.1/MarkupSafe-1.1.1-cp36-cp36m-manylinux1_x86_64.whl
Installing collected packages: Werkzeug, MarkupSafe, Jinja2, click, itsdangerous, flask
Successfully installed Jinja2-2.11.2 MarkupSafe-1.1.1 Werkzeug-1.0.1 click-7.1.2 flask-1.1.2 itsdangerous-1.1.0

这个时候去私服的库里看下,已经可以看到刚刚安装的几个包了。

2,全局配置

通过添加全局配置,就不需要每次执行编译的时候指定私服地址了:

mkdir ~/.pip
cat > ~/.pip/pip.conf << EOF
[global]
timeout = 60
trusted-host = 192.168.75.11
index-url = http://192.168.75.11:8081/repository/group-pypi/simple
EOF

保存之后,本机的代理就走本地的私服了。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Python中zipfile压缩文件模块的基本使用教程

    zipfile Python 中 zipfile 模块提供了对 zip 压缩文件的一系列操作. f=zipfile.ZipFile("test.zip",mode="") //解压是 r , 压缩是 w 追加压缩是 a mode的几种: 解压:r 压缩:w 追加压缩:a 压缩一个文件 创建一个压缩文件 test.zip(如果test.zip文件不存在) ,然后将 test.txt 文件加入到压缩文件 test.zip 中,如果原来的压缩文件中有内容,会清除原有的内容

  • Python matplotlib 绘制双Y轴曲线图的示例代码

    Matplotlib简介 Matplotlib是非常强大的python画图工具 Matplotlib可以画图线图.散点图.等高线图.条形图.柱形图.3D图形.图形动画等. Matplotlib安装 pip3 install matplotlib#python3 双X轴的 可以理解为共享y轴 ax1=ax.twiny() ax1=plt.twiny() 双Y轴的 可以理解为共享x轴 ax1=ax.twinx() ax1=plt.twinx() 自动生成一个例子 x = np.arange(0.,

  • 基于Python实现视频的人脸融合功能

    ​ 图片提取 为了方便技术展示,我们选取素材为演员杨紫的一段演讲视频,用例仅为技术交流演示使用,不针对任何指定人. 为达到我们AI换脸的目的,我们首先需要将这段视频逐帧提取成照片 def vedio_2_pic(self,file,save_path): """ 逐帧取照片 file:视频的位置 save_path:保存路径 """ # 读取视频 video = cv2.VideoCapture(file) # 获取视频帧率 fps = vide

  • python + selenium 刷B站播放量的实例代码

    B站UP主的主要收益来源(播放量获取的奖励.用户充电.广告等等) 首先做up主最直接的就是做视频,当你的粉丝过1000或者视频总播放超过10万时可以申请创造激励,申请创造激励之后,你的原创视频播放会给你带来收益,平均1000播放3元左右,根据你视频的质量上下浮动,如果你的视频被顶上首页那很自然的你的视频你会获得大量的流量,当然视频的点赞投币都会影响视频被顶上首页的概率. python selenium 模块 selenium模块是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏

  • Python Django搭建网站流程图解

    1. 创建Django REST framework工程 1.1手动创建工程文件夹 1.2进去工程文件夹内,执行命令:django-admin startproject web_project创建工程目录 1.3修改,添加目录结构 apps 存放Django的应用libs 存放第三方的库文件settings 存放配置文件的目录,分为开发dev和线上produtils 存放项目自己定义的公共函数或类等docs 用于存放一些说明文档资料 2. 修改配置文件 2.1 将Django工程中的settin

  • Python数据可视化图实现过程详解

    python画分布图代码示例: # encoding=utf-8 import matplotlib.pyplot as plt from pylab import * # 支持中文 mpl.rcParams['font.sans-serif'] = ['SimHei'] # 'mentioned0cluster', names = ['mentioned1cluster','mentioned2cluster', 'mentioned3cluster', 'mentioned4cluster'

  • 基于nexus3配置Python仓库过程详解

    搭建Python私服,我们依旧使用nexus3. 与其他私服一样的,Python私服同样有三种类型: hosted : 本地存储,便于开发者将个人的一些包上传到私服中proxy : 提供代理其他仓库的类型,如豆瓣的pypi仓库group : 组类型,实质作用是组合多个仓库为一个对外的地址 那么就来一个一个创建. 1,创建blob存储 为其创建一个单独的存储空间. 2,创建hosted类型的pypiName: 定义一个名称local-pypiStorage Blob store,我们下拉选择前面创

  • NPM配置私服构建内网中央仓库过程详解

    目录 写在前面 1. 概述 2. 部署nexus 3. 几个概念 3.1 代理 3.2 本地包 3.3 包分组 4. 配置NPM包 4.1 配置本地包 4.2 配置代理 4.3 配置包分组 4.4 配置好后我们就可以进行发布和下载 4.5 遇到的问题 4.5.1 在登录的时候遇到的问题 4.5.2 登录报错 写在前面 目前大部分的项目,基本上都采用了前后端分离的框架.随着项目的不断做大做强,框架就会变得很庞大. 那么前端的框架,也是会变得不断的臃肿.不同的模块项目前端,可能有些公共的方法,都是共

  • Spring Cloud应用实现配置自动刷新过程详解

    这篇文章主要介绍了Spring Cloud应用实现配置自动刷新过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 通过spring cloud 的消息总线,将配置github 等源代码仓库的变更通知到spring cloud 的所有组件. spring-bus 需要用到rabbitmq ,所以需要提前准备rabbitmq消息队列环境 配置中心调整 1.配置中心配置引用pom <dependency> <groupId>org.

  • pycharm指定python路径过程详解

    pycharm指定python路径,pycharm配置python环境的方法是: 1.依次点击[File].[Project Interpreter]: 2.点击[Show All],选择[Existing Environment]: 3.选择python的安装路径,点击OK即可. pycharm如何设置python路径 解释器的选项路径为:File->Setting->Build, Execution, Deployment-> Console-> Python Console:

  • python从内存地址上加载python对象过程详解

    这篇文章主要介绍了python从内存地址上加载pythn对象过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在python中我们可以通过id函数来获取某个python对象的内存地址,或者可以通过调用对象的__repr__魔术函数来获取对象的详细信息 def tt(): print(111) print(tt.__repr__()) print(id(tt)) 但是不知大家是否想过,其实这个内存地址可以直接加载python对象的.有两种方

  • NodeJS配置CORS实现过程详解

    跨域问题主要在header上下功夫 首先提供一个w3c的header定义 http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html 再提供一个网友提供的header详解 http://kb.cnblogs.com/page/92320/ 这两个有助于帮助大家理解header的类型和作用, 但是遗憾的是跨域相关的两个header属性我都没有找到相关的定义, 下面直接告诉大家 1是Access-Control-Allow-Origin 允许的域 2

  • 使用Atom支持基于Jupyter的Python开教程详解

    有关于使用Atom进行Python开发的网上资料比较少,最近发现使用Atom结合Hydrogen插件进行Python开发,尤其是数据挖掘相关的工作,整体体验要好于Vscode,Vscode虽然说也有连接Jupyter的工具,但是交互式的开发Hydrogen体验更好. 这里放了个动图来展示一下Hydrogen的强大 插件安装 Python Hydrogen atom-ide-ui ide-python 这里要注意,本地的pip需要 安装 python-language-server[all],在i

  • Python基于pip实现离线打包过程详解

    新公司是内网环境,无法使用pip安装第三方资源库,在网上搜下,可以直接使用pip打包本机所安装的第三方资源库,打包成whl文件 一 进入cmd命令行 1 打包单个模块 pip download pytest -d /tmp 2 打包本机所有的包 pip freeze >requirements.txt pip download -r requirements.txt -d /tmp 或者 pip install --download /tmp/packages -r requirements.t

  • Python基于数列实现购物车程序过程详解

    要求 1.启动程序后让用户输入余额,并打印商品列表 2.用户通过输入编号购买商品 3.用户选择商品购买后,根据余额判断成功或者失败,给出对应提示 4.可以随时退出,退出后打印账号余额以及购买的商品列表 构思 1.首先,用户余额需要进行存储,用户购买的物品需要进行存储在数组中 2.用户购买成功后,将购买的物品放入物品集合,并用总金额减去余额 3.如果失败,给出失败提示,并打印余额 4.用户选择继续后,无论成功失败,都可以继续购买 代码 # 用户输入工资 balance = int(input("P

  • 基于zabbix实现监控Jenkins过程详解

    一.监控架构图 二.实现思路 在 Jenkins 上安装 Metrics 插件,使 Jenkins 暴露 metrics api: 编写python代码从api抓取数据,并将数据解析为zabbix可以识别的格式: 配置 Zabbix server 及 agent 以实现监控及告警 三.具体配置 1.安装Jenkins Metrics插件 插件下载地址:http://updates.jenkins-ci.org/download/plugins/metrics/ 安装 Metrics 插件,在系统

随机推荐