【Python】搭建pypi私仓

news2024/9/24 17:12:24

1. 下载依赖

pip install pypiserver # 命令安装 pypiserver 库
pip install passlib # passlib 包来读取 Apache htpasswd 文件
apt-get install -y apache2-utils

2. 生成密码

使用htpasswd库在指定路径/path/to/.pypipasswd生成密码文件

htpasswd -c /path/to/.pypipasswd root
New password: [输入密码]
Re-type new password: [再次输入密码]
Adding password for user root

3. 启动仓库

pypi-server run -P /path/to/.pypipasswd --fallback-url https://mirrors.aliyun.com/pypi/simple/ /opt/pypi/package_directory /opt/pypi/packages -p 8989

启动PyPI服务器,可以通过浏览器访问 http://localhost:8080/ 以打开PyPI服务器的默认欢迎页。
在这里插入图片描述

  • -P:指定密码文件
  • –fallback-url:本pypi-server找不到包时,到此源寻找
  • -p:启动端口

4. 服务化

首先编写启动脚本run-pypi.sh

#!/bin/bash
pypi-server run -P /path/to/.pypipasswd --fallback-url https://mirrors.aliyun.com/pypi/simple/ /opt/pypi/package_directory /opt/pypi/packages -p 8989

在/etc/systemd/system路径下新增文件 pypi-server.service3

[Unit]
Description=Pypi server
Requires=network-online.target
After=network-online.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/opt/pypi/run-pypi.sh

[Install]
WantedBy=multi-user.target

启动、开机自启

systemctl start pypi-server.service
systemctl enable pypi-server.service

查看状态

systemctl status pypi-server.service
● pypi-server.service - Pypi server
     Loaded: loaded (/etc/systemd/system/pypi-server.service; enabled; vendor preset: enabled)
     Active: active (running) since Mon 2024-05-27 12:10:47 CST; 2min 37s ago
   Main PID: 2406608 (run-pypi.sh)
      Tasks: 7 (limit: 464205)
     Memory: 61.8M
     CGroup: /system.slice/pypi-server.service
             ├─2406608 /bin/bash /opt/pypi/run-pypi.sh
             └─2406614 /usr/bin/python3 /usr/local/bin/pypi-server run -P /path/to/.pypipasswd --fallback-url https://mirrors.aliyun.com/pypi/simple/ /opt/pypi/package_directory /opt/pypi/packages -p 8989

May 27 12:10:47 tool-pnb-105-112 systemd[1]: Started Pypi server.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1701375.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Windows64位操作系统安装汇编语言环境

1、下载好MASM工具, 并存放在指定路径 2、再安装一个DOSBox 3、打开DOSBox, 并使用 mount 将刚刚存放MASM的路径挂在到C盘,然后进入C盘就可以使用 MASM的命令工具了。 例如: mount c G:\install\study\MASM C:但是DOSBox默认打开的窗口是很小的&…

Jenkins配置(插件/角色/凭证)

目录 传送门前言一、Jenkins插件管理1、更换为国内下载源2、中文汉化插件下载(不推荐)3、低版本Jenkins爆红插件安装4、低版本Jenkins插件持续报错解决办法 二、Jenkins用户角色三、Jenkins凭证管理(svn/git)1、Username with pas…

Linux的nload/nettraf命令实时网卡流量监测

对于linux的网卡上下行流量监测方法有很多 例如nload 现成的nload命令 现成的有 nload 安装 yum -y install nload 查看所有网卡实时网速 sudo nload -m 按enter/上下翻页键即可切换网卡 查看指定网卡实时网速 sudo nload eth0 -m 基于nettraf编译的rpm包 当然也可以你…

Java计算日期相差天数的几种方法

Java计算日期相差天数的几种方法 🗓️ Java计算日期相差天数的几种方法摘要引言一、使用java.util.Date和java.util.Calendar📅1. 使用java.util.Date示例代码 2. 使用java.util.Calendar示例代码 二、使用java.time.LocalDate📆示例代码 三、…

这13个前端库,帮我在工作中赢得了不少摸鱼时间

前言 平时开发的过程中,常常会使用到一些第三方库来提高开发效率,我总结了自己工作这么久以来经常用到的 13 个库,希望对大家有帮助~ antd 全称应该是Ant Design,这是一个 React 的组件库,旨在提供一套常…

基于springboot实现中国陕西民俗网系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现中国陕西民俗网系统演示 摘要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对信息管理混乱&#xff0c…

内网安全--域渗透准备知识

目录 知识点: 0x01 0x02 0x03 系列点: Linux主机信息收集 windows主机信息收集 知识点: 0、域产生原因 1、内网域的区别 2、如何判断在域内 3、域内常见信息收集 4、域内自动化工具收集 -局域网&工作组&域环境区别 -域…

第一节:Redis的数据类型和基本操作

最近整理了关于Redis的一些文档,分享给大家,后续会持续更新...... Redis的数据类型 字符串String String:字符串,可以存储String、Integer、Float型的数据,甚至是二进制数据,一个字符串最大容量是512M 列表…

我理解的“财富真相”……

我理解的“财富真相” 人生富贵一途,年轻时会认为钱特别重要,因为要啥没啥,所以整台好车,或有个安乐窝基本是极限目标理解,其实也想有更多钱,但往远了说就具体目标模糊了,咬牙切齿的谈理想&…

618购物节值得入手哪些数码?值得入手的宝藏数码好物安利!

随着618购物节的到来,数码爱好者们纷纷摩拳擦掌,期待在这个年中大促中寻觅到心仪的数码好物,那么在这个618购物节,有哪些数码产品值得我们入手呢?接下来,就让我们一起盘点那些值得入手的宝藏数码好物吧&…

靠AI创意,变现20w!

文章首发于公众号:X小鹿AI副业 大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年,也一名 AIGC 爱好者,持续分享更多前沿的「AI 工具」和「AI副业玩法」,欢迎一起交流~ 之前X小鹿一直在各…

注册表Windows兼容性设置(AppCompatFlags)

属性 - 兼容性 EXE文件属性中有兼容性标签,当有些老版本软件不能正常运行时经常会调整这里的设置。 image.png 上面的所有选项都写在注册表中,其中“更改所有用户的设置”保存在HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\AppC…

一步步实现知乎热榜采集:Scala与Sttp库的应用

背景 在大数据时代,网络爬虫技术发挥着不可或缺的作用。它不仅能够帮助我们快速地获取互联网上的信息,还能处理和分析这些数据,为我们提供深刻的洞察。知乎,作为中国领先的问答社区,汇聚了各行各业的专家和广大用户的…

Selenium探险家:驾驭Web自动化的秘籍与实战

Hi,我是阿佑,今天将带大伙们学会如何使用Selenium进行高效的网站测试,如何配置Selenium Grid实现分布式测试,以及如何预测和拥抱自动化测试的未来! 文章目录 1. 引言2. 背景介绍2.1 Selenium概览2.2 Python与Selenium的…

力扣刷题--268. 丢失的数字【简单】

题目描述🍗 给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。 示例 1: 输入:nums [3,0,1] 输出:2 解释:n 3,因为有 3 个数字,所以…

YOLOv5 | 卷积模块 | 提高网络的灵活性和表征能力的动态卷积【附代码+小白可上手】

💡💡💡本专栏所有程序均经过测试,可成功执行💡💡💡 轻量级卷积神经网络由于其低计算预算限制了CNNs的深度(卷积层数)和宽度(通道数),…

广义线性chirplet变换【附MATLAB代码】

文章来源:微信公众号:EW Frontier 摘要 时频分析方法是一种刻画信号时变特征的有效工具,在相当长的一段时间内受到了广泛的关注。随着TF算法的发展,许多先进的方法被提出,可以提供更精确的TF结果。但是,不…

第一届 长城杯 总决赛wp

第一届 长城杯 总决赛 - Ahisec 第一阶段 Zip_guessinteger 第一层bkcrack攻击部分明文,注意偏移 ​ ┌──(root㉿Ten)-[~/tools/Misc/bkcrack] └─# ./bkcrack -C zip_guessinteger.zip -c breakthroughentry.txtflag.txt.zip -p 1.txt -o 30 bkcrack 1.6.1 …

Lora理解

Parameter-Efficient Fine-Tuning (PEFT) :节约开销的做法,fine-tune少量参数,而不是整个模型; Low-Rank Adaptation (LoRA) :是PEFT的一种;冻结原参数矩阵,只更新2个小参数矩阵。

面了字节大模型算法岗,太难了。。。

节前,我们组织了一场算法岗技术&面试讨论会,邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 汇总合集…