跳转到主要内容

从Conda-Store启动Jupyter内核

项目描述

nb_conda_store_kernels

此扩展使Jupyter Notebook或JupyterLab应用能够访问存储在Conda-Store中的环境,并运行Python、R和其他语言的内核。当选择来自外部环境的内核时,将下载、提取环境,自动激活conda环境,并最终启动内核。此包受到了nb_conda_kernels的极大启发。

通过nb_conda_store_kernel内核启动的任何笔记本都将包含有关使用环境的笔记本元数据。这提供了一种强大的机制,可以在以后以可重复的方式运行笔记本。

{
    ...,
    "kernelspec": {
        ...,
        "name": "conda-store://<namespace>/<environment_name>:<build-id>",
        ...,
    },
    ...
}

该包通过定义一个自定义KernelSpecManager来工作,该Manager调用Conda-Store REST API以获取具有所需软件包的可用conda环境。它动态修改每个KernelSpec,以便可以从笔记本环境正确运行。当您创建一个新的笔记本时,这些修改过的内核将在选择列表中可用。另外,无需Conda-Pack

用法

此包不需要pipconda来正常运行,但目前仅适用于Linux。它应安装在你运行Jupyter Notebook或JupyterLab的环境中。建议通过Conda安装nb_conda_store_kernsl,因为激活钩子可以简化安装过程,但没有强烈理由要使用Conda。

conda install -c conda-forge nb_conda_store_kernels

或者,pip也可以正常工作,但需要多一步操作。

pip install nb_conda_store_kernels
python -m nb_conda_store_kernels.install --enable
# python -m nb_conda_store_kernels.install --disable # to disable

python -m nb_conda_store_kernels.install --enable仅修改单个Jupyter设置。如果不起作用(应该起作用,如果不起作用则是一个错误)您需要将以下设置添加到jupyter_config.py中。

mkdir ~/.jupyter
echo 'c.JupyterApp.kernel_spec_manager_class = "nb_conda_store_kernels.manager.CondaStoreKernelSpecManager"' > ~/.jupyter/jupyter_conifg.py

为了使nb_conda_store_kernels能够正确连接到Conda-Store,需要设置几个环境变量。在底层,使用的是conda-store客户端,并且有详细的配置文档

export CONDA_STORE_URL=http(s)://...
export CONDA_STORE_AUTH=none|basic|token
# export CONDA_STORE_USERNAME=... # using basic auth 
# export CONDA_STORE_PASSWORD=... # using basic auth
# export CONDA_STORE_TOKEN=...    # using token auth

最后启动JupyterLab!

jupyter lab

连接到现有的Conda-Store服务器

访问您使用的Conda-Store服务器,并在登录后通过访问/user端点来获取您的用户令牌。

docker run -p 8888:8888 -e CONDA_STORE_TOKEN=... quansight/nb-conda-store-kernels:v0.1.5

与nbconvert、voila、papermill等一起使用。

由于nb_conda_store_kernels在幕后使用的是conda-store客户端,并且设置了适当的环境变量,因此这些用例得到了客户端的支持。计划扩展其他工具以使用Conda-Store。

conda-store run namespace/environment -- python -c "print('Hello, Conda-Store!')"

开发

启动Conda-Store服务器

docker-compose up --build
jupyter lab

localhost:5000登录Conda-Store并创建一个新的环境。

版权所有 2022 Quansight LLC

在满足以下条件的情况下,允许重新分配和使用源代码和二进制形式,无论是否修改:

  1. 源代码重新分配必须保留上述版权声明、本条件列表和以下免责声明。

  2. 二进制形式的重新分配必须在文档和/或其他与分发一起提供的材料中复制上述版权声明、本条件列表和以下免责声明。

  3. 未经版权所有者或其贡献者事先书面许可,不得使用版权所有者或其贡献者的名称来认可或推广源自本软件的产品。

本软件按“原样”提供,并且版权所有者和贡献者不提供任何明示或暗示的保证,包括但不限于适销性和针对特定目的的适用性保证。在任何情况下,版权所有者或贡献者均不对任何直接、间接、偶然、特殊、示范性或后果性损害(包括但不限于替代商品或服务的采购;使用、数据或利润的损失;或业务中断)承担责任,即使已告知此类损害的可能性。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源代码分发

nb_conda_store_kernels-0.1.5.tar.gz (7.4 kB 查看散列值)

上传时间: 源代码

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面