【问题标题】:how can i use pip search with my own nexus pypi repo?如何在我自己的 nexus pypi 存储库中使用 pip 搜索?
【发布时间】:2018-06-26 13:21:10
【问题描述】:

我在局域网中部署了一个 nexus repo sys,并在其上配置了一个 PyPI repo。我可以使用pip install 用我的私人镜像安装包。但我不能使用pip search

这是我的 pip.ini

[global]
index-url = http://nexus.repo.com/repository/PyPI/simple
index = http://nexus.repo.com/repository/PyPI/pypi
trusted-host = nexus.repo.com

当我使用pip search 时,它会返回:

C:\Users\user>pip 搜索 redis
获取 http://nexus.repo.com/repository/PyPI/pypi 时出现 HTTP 错误 404
例外:
回溯(最近一次通话最后一次):
文件“c:\python27\lib\site-packages\pip\basecommand.py”,第 215 行,主要状态 = self.run(options, args)
文件“c:\python27\lib\site-packages\pip\commands\search.py​​”,第 45 行,运行 pypi_hits = self.search(query, options)
文件“c:\python27\lib\site-packages\pip\commands\search.py​​”,第 62 行,搜索命中 = pypi.search({'name': query, 'summary': query}, 'or' )
call 中的文件“c:\python27\lib\xmlrpclib.py”,第 1243 行 return self.__send(self.__name, args)
文件“c:\python27\lib\xmlrpclib.py”,第 1602 行,在 __request verbose=self.__verbose
文件“c:\python27\lib\site-packages\pip\download.py”,第 776 行,在请求 response.raise_for_status()
文件“c:\python27\lib\site-packages\pip_vendor\requests\models.py”,第 862 行,在 raise_for_status 中引发 HTTPError(http_error_msg, response=self)
HTTPError: 404 客户端错误: 找不到 url:http://nexus.repo.com/repository/PyPI/pypi
C:\用户\用户>

我在谷歌上搜索和搜索,但到目前为止都是空的。 所以我在这里,希望其他人可以指导我完成这个。 非常感谢。

【问题讨论】:

  • 但是你可以从那个 url 安装/下载?试试pip download mypkg --index http://nexus.repo.com/repository/PyPI/pypi,包下载了吗?另外,如果您不使用 SSL,您需要 trusted-host 做什么?
  • 是的,伙计。我可以从我的仓库中 pip downloadpip install,但我不能 pip search 包。我打算在发现问题后使用 SSL。所以我将信任主机添加到配置中。

标签: python python-2.7 proxy pip nexus


【解决方案1】:

试试这个: pip search redis -i http://nexus.repo.com/repository/PyPI/pypi -vvv --trusted-host nexus.repo.com

我遇到了同样的问题,发现我基本上是用 /simple url 搜索的,而不是 /pypi 一个(/simple 一个只适用于 pip install)

【讨论】:

  • 已经试过了。但对我不起作用。我设置了配置index = http://nexus.repo.com/repository/PyPI/pypi,这意味着pip search redis -i http://nexus.repo.com/repository/PyPI/pypi -vvv --trusted-host nexus.repo.com。对吗?
  • 这对我有用pip search --index https://nexus.repo.com:8081/repository/my-pypi/pypi --trusted-host nexus.repo.com:8081 my-package
【解决方案2】:

对我来说,问题是我在设置代理存储库时使用了简单的 URL https://pypi.org/simple/ 作为 Remote Storage 参数,而不是 https://pypi.org/

【讨论】:

    【解决方案3】:

    看起来这个功能was deprecated 用于代理存储库。

    “pip search”命令已弃用,并且不适用于代理存储库,但您仍然可以在托管存储库中搜索包。

    【讨论】:

      猜你喜欢
      • 2019-08-27
      • 1970-01-01
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      • 2019-02-08
      • 2021-12-19
      • 2014-07-31
      • 2014-06-26
      相关资源
      最近更新 更多