可以将 conda 配置为使用私有 pypi 存储库吗?

Can conda be configured to use a private pypi repo?

我有创建 conda 和 pip 包的用户 - 我无法控制这个

我使用 artifactory 来托管私有 conda 和 pip 存储库,例如,私有 pip 存储库是这样工作的:https://www.jfrog.com/confluence/display/JFROG/PyPI+Repositories

有时 conda 环境或包需要一个私有 pip 包。如何配置 conda 以从我的私有存储库获取我的私有 pip 包?

我还没有找到这方面的文档。我希望这对用户尽可能透明 - 所以他们设置一次配置,在他们的 conda 环境中,他们可以轻松指定一个私有 pip 包,它就可以工作

Conda 不会自动搜索 PyPI 或替代的 pip 兼容索引,但在使用 pip install 时仍然可以使用 --index-url--extra-index-url 标志。例如,

临时安装

# activate environment
conda activate foo

# ensure it has `pip` installed
conda list pip

# install with `pip`
pip install --extra-index-url http://localhost:8888 bar

基于 YAML 的环境

foo.yaml

name: foo
channels:
  - defaults
dependencies:
  - python
  - pip
  - pip:
    - --extra-index-url http://localhost:8888
    - bar

环境营造

conda env create -f foo.yaml