使用包管理器#
存储库支持两种包管理器:conda 和 PyPI。要使用 conda 或 PyPI 包,您必须使用它们对应的子域。
示例:要从用户“travis”安装 conda 包,请使用存储库 URL
https://conda.<your-anaconda-repo>/travis
示例:要从用户“travis”安装 PyPI 包,请使用存储库 URL
https://pypi.<your-anaconda-repo>/travis
使用 conda 包#
构建 conda 包#
要使用 conda build
构建包
安装 Anaconda Client 和 conda build
conda install anaconda-client conda-build
选择您要为其构建包的存储库。在此示例中,我们使用一个简单的公共 conda 测试包
git clone https://github.com/anaconda-platform/anaconda-client cd anaconda-client/example-packages/conda/
在此目录中,有两个必需的文件:build.sh 和 meta.yaml。
注意:Linux 和 macOS 系统是 Unix 系统。为 Unix 系统构建的包需要
build.sh
文件,为 Windows 构建的包需要bld.bat
文件,为 Unix 和 Windows 系统构建的包都需要build.sh
文件和bld.bat
文件。所有包都需要meta.yaml
文件。要构建包,请关闭自动 Client 上传,然后运行
conda build
命令conda config --set anaconda_upload no conda build .
以这种方式构建的所有包都放置在 Anaconda 的
conda-bld
目录的子目录中。您可以使用
--output
选项检查结果文件放置的位置conda build . --output
有关 conda 整体构建框架的更多信息,您可能还想阅读文章 构建 conda 包 和 conda build 教程。
上传 conda 包#
使用 anaconda upload 命令将测试包上传到存储库
anaconda login
anaconda upload /path/to/conda-package.tar.bz2
注意:将 /path/to/
替换为您存储包的路径。
安装 conda 包#
您可以通过将频道添加到您的 conda 配置,从存储库安装 conda 包。
由于 conda 知道如何与存储库交互,因此指定频道 “sean” 会转换为
https://<your-anaconda-repo>/sean
conda config --add channels sean
您现在可以从 Sean 的存储库帐户安装公共 conda 包。尝试安装
https://<your-anaconda-repo>/sean/testci
处的 testci 包conda install testci
您还可以使用令牌和标签从频道安装包
conda install -c https://conda.anaconda.org/t/<token>/<channel>/label/<labelname> <package>
注意:将 <token>
替换为提供的令牌,将 <channel>
替换为用户频道,将 <labelname>
替换为标签名称,将 <package>
替换为您要安装的包名称。
使用 PyPI 包#
上传 PyPI 包#
您可以使用保存在 anaconda-client 存储库 中的小型公共示例包来测试 PyPI 包上传
首先从命令行克隆存储库
git clone git@github.com:anaconda-platform/anaconda-client.git cd anaconda-client/example-packages/pypi/
您现在可以使用
setup.py
脚本创建您的 PyPI 包python setup.py sdist
您的包现在构建为源 “tarball”,并准备好使用以下命令上传
anaconda upload dist/*.tar.gz
您的包现在位于
http://<your-anaconda-repo>/USERNAME/PACKAGE
注意:将 <your-anaconda-repo>
替换为您的本地存储库的名称,将 USERNAME
替换为您的用户名,将 PACKAGE
替换为包名称。
安装 PyPI 包#
安装 PyPI 包的最佳方法是使用 pip。对于以下命令,您可以使用您在上述步骤中创建的包
pip install --extra-index-url https://pypi.<your-anaconda-repo>/USERNAME/PACKAGE
注意:将 <your-anaconda-repo>
替换为您的本地存储库的名称,将 USERNAME
替换为您的用户名,将 PACKAGE
替换为 test-package 名称。