Docker安装pypiserver私服的方法步骤

 更新时间:2025年03月10日 11:49:21   作者:MasonYyp  
本文主要介绍了Docker安装pypiserver私服的方法步骤,通过Docker安装,可以方便地创建私有包仓库,具有一定的参考价值,感兴趣的可以了解一下

1 简介

Python开源包管理工具有pypiserver、devpi和Nexus等,pypiserver安装部署比较简单,性能也不错。

搭建pypiserver私服,可以自己构建镜像,也可以使用官网的docker镜像。

# Github地址
https://github.com/pypiserver/pypiserver

2 安装

使用docker安装pypiserver

# 下载包
docker pull pypiserver/pypiserver:v2.3.2

使用docker安装镜像

pypiserver支持使用.htpasswd设置用户名和密码。在目录中/home/pypiserver/创建密钥文件

# Ubuntu上安装htpasswd的依赖包
sudo apt-get install apache2 apache2-utils

# 生成密码文件,root是用户名(可根据需求自己设定),之后输入密码即可
htpasswd -sc /home/pypiserver/.htpasswd root

# 返回值如下
New password: 
Re-type new password: 
Adding password for user root

创建容器

docker run -itd \
--restart always \
--name pypiserver \
-p 8080:8080 \
-v /home/pypiserver/.htpasswd:/data/.htpasswd \
-v /home/pypiserver/packages:/data/packages \
pypiserver/pypiserver:v2.3.2 run -P .htpasswd packages

访问地址

# 系统地址
http://192.168.108.146:8080/

# 软件包列表
http://192.168.108.146:8080/simple/

在这里插入图片描述

在这里插入图片描述

3 下载第三方包

单个下载numpy第三方包,建议不要再容器内下载包(会在下载.tar.gz时报错),推荐在宿主机的虚拟环境中下载。

# 进入容器
docker exec -it pypiserver /bin/bash

# 指定下载目录packages
pip download numpy -d ./packages --no-cache-dir

# 指定第三方源,可以加快下载
pip download numpy -d ./packages -i https://pypi.tuna.tsinghua.edu.cn/simple --no-cache-dir

批量下载第三方包

pip download -r requirements.txt -d ./packages

4 使用twine上传自定义包

在Python环境中安装twine

pip install twine

上传自定义包

注意:dist目录中是打包后的tar.gz或者whl文件,

# 上传依赖包
twine upload --repository-url http://192.168.108.146:8080/ dist/*.tar.gz
twine upload --repository-url http://192.168.108.146:8080/ dist/*.whl

# 返回值
twine upload --repository-url http://192.168.108.146:8080/ ./*.whl
Uploading distributions to http://192.168.108.146:8080/
Enter your username: root
Enter your password:
Uploading numpy-2.2.2-cp310-cp310-musllinux_1_2_x86_64.whl
100% ---------------------------------------- 18.2/18.2 MB • 00:00 • 174.0 MB/s
# 上传tar.gz
twine upload --repository-url http://localhost:8080 dist/numpy-2.2.2-cp310-cp310-musllinux_1_2_x86_64.tar.gz

# 上传.whl
twine upload --repository-url http://localhost:8080 dist/numpy-2.2.2-cp310-cp310-musllinux_1_2_x86_64.whl

5 使用依赖包

安装私有依赖包numpy。

# 注意不能单独使用-i, --index-url安装,尽量添加--trusted-host参数
pip install -i http://192.168.108.146:8080/simple/ --extra-index-url http://192.168.108.146:8080/simple/ --trusted-host 192.168.108.146 numpy

# 查看numpy
pip search --index http://192.168.108.146:8080 numpy

到此这篇关于Docker安装pypiserver私服的方法步骤的文章就介绍到这了,更多相关Docker安装pypiserver私服内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • Docker如何使用link建立容器之间的连接

    Docker如何使用link建立容器之间的连接

    本篇文章主要介绍了Docker如何使用link建立容器之间的连接,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • 在Docker环境中部署和运行One API的操作方法

    在Docker环境中部署和运行One API的操作方法

    随着技术的发展,API 作为服务连接的桥梁,变得越来越重要,One API 是一种流行的 API 管理平台,能够帮助我们更好地管理、监控和扩展 API 服务,本文给大家介绍了如何在 Docker 环境中部署和运行 One API,需要的朋友可以参考下
    2024-11-11
  • 使用docker搭建jenkins自动化工具的实现

    使用docker搭建jenkins自动化工具的实现

    大家在工作中,应该都有使用过jenkins 自动化打包或发布,本文主要介绍了使用docker搭建jenkins自动化工具的实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04
  • win10安装docker及遇到的坑及解决

    win10安装docker及遇到的坑及解决

    这篇文章主要介绍了win10安装docker及遇到的坑及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • 使用docker+devpi搭建本地pypi源的方法

    使用docker+devpi搭建本地pypi源的方法

    这篇文章主要介绍了使用docker+devpi搭建本地pypi源的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • 启动桌面Docker提示虚拟服务未启动两种解决方案

    启动桌面Docker提示虚拟服务未启动两种解决方案

    Docker 是⼀个开源的应用容器引擎,可以实现虚拟化,这篇文章主要介绍了在启动Docker Desktop时遇到的错误,并提供了解决方案,文中通过代码以及图文介绍的非常详细,需要的朋友可以参考下
    2025-04-04
  • Docker 端口映射与容器互联的实现

    Docker 端口映射与容器互联的实现

    Docker的端口映射和容器互联是构建和管理微服务架构时重要的概念,本文主要介绍了Docker 端口映射与容器互联的实现,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2025-01-01
  • 如何查看docker-compose.yml所在位置

    如何查看docker-compose.yml所在位置

    这篇文章主要介绍了如何查看docker-compose.yml所在位置问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • docker容器动态添加端口号的方法

    docker容器动态添加端口号的方法

    这篇文章主要介绍了docker容器动态添加端口号的方法,本文分步骤给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • 把数据库部署在docker容器内有哪些缺陷

    把数据库部署在docker容器内有哪些缺陷

    这篇文章主要介绍了把数据库部署在docker容器内有哪些缺陷,帮助大家更好的理解和学习docker容器和数据库,感兴趣的朋友可以了解下
    2020-08-08

最新评论