如何滚动我自己的pypi?

dru*_*rue 43 python pypi

我想运行我自己的内部pypi服务器,用于组织内的蛋分发.

我找到了一些项目,例如:

据我了解,pypi.python.org使用名为Cheese Shop的软件.

我的问题:

  1. 为什么我不能使用cheeseshop本身?(我找不到它,不确定它是否存在)
  2. 其他人如何解决这个问题?(目前我们使用腮红 svn来分发鸡蛋)

*编辑:这似乎是规范的http://wiki.python.org/moin/PyPiImplementations.不过,我对反馈感兴趣.

小智 17

对于轻量级解决方案,请使用pypiserver.


Joh*_*kin 15

奶酪商店的来源可以从https://bitbucket.org/pypa/pypi/src下载.从您链接的页面,还有一个使用Apache作为"哑"Python包存储库的示例:

# Mount pypi repositories into URI space
Alias /pypi   /var/pypi

# /pypi/dev: Redirect for unknown packages (fallback to pypi)
RewriteCond   /var/pypi/dev/$1 !-d
RewriteCond   /var/pypi/dev/$1 !-f
RewriteRule   ^/pypi/dev/([^/]+)/?$ http://pypi.python.org/pypi/$1/ [R,L]

RewriteCond   /var/pypi/dev/$1/$2 !-f
RewriteRule   ^/pypi/dev/([^/]+)/([^/]+)$ http://pypi.python.org/pypi/$1/$2 [R,L]

# /pypi/stable: Redirect for unknown packages (fallback to pypi)
RewriteCond   /var/pypi/stable/$1 !-d
RewriteCond   /var/pypi/stable/$1 !-f
RewriteRule   ^/pypi/stable/([^/]+)/?$ http://pypi.python.org/pypi/$1/ [R,L]

RewriteCond   /var/pypi/stable/$1/$2 !-f
RewriteRule   ^/pypi/stable/([^/]+)/([^/]+)$ http://pypi.python.org/pypi/$1/$2 [R,L]
Run Code Online (Sandbox Code Playgroud)

  • 在研究了所有可用选项之后,我对其中任何一个都不满意。但是,即使不是很理想,Apache解决方案也是最简单的解决方案,也是我最终使用的解决方案。 (2认同)

Day*_*Day 8

仓库

仓库将是您2017年最好的选择.从项目的自述文件:

Warehouse是下一代Python包存储库,旨在取代目前为PyPI提供支持的遗留代码库

...

您可以使用docker和本地运行Warehouse docker-compose.有关 如何设置的说明,请参阅 文档中的入门.

它由Python包装管理局(PyPA)维护,他与Python核心开发团队的成员合作,并且有一个https://pypi.org/运行实时版本,它反映了旧版PyPI中的所有内容(https: //pypi.python.org/).

  • 我启动了一个小型EC2实例,用作具有15GB硬盘的pypi服务器。仓库所需的所有容器都不适合该驱动器! (3认同)

Dav*_*vid 6

开发者

我们在企业环境中使用它并且非常满意。它支持复制、私有索引和索引继承。


jul*_*sar 5

有一个名为djangopypi2的djangopypi的分支,您可以从https://github.com/popen2/djangopypi2/获得,我已安装并为我工作,此选项是我从大约24种替代方法列表中选择的已在最近的搜索中找到,您可以在此处查看列表:http : //uyeya.blogspot.com/2013/10/list-of-local-alternatives-of-pypi.html