菜鸟在这里。我有一个 dockerized jupyter 实验室实例,其中为 root 用户安装了一堆软件包,现在我想添加一个根本没有软件包的额外内核(还)。这是我尝试这样做的方法:
# SYSTEM SETUP
FROM python:3.11.5-bookworm
ADD requirements/pip /requirements/pip
RUN pip install -r /requirements/pip
RUN mkdir /venv/ \
&& cd /venv/ \
&& python -m venv blank \
&& /venv/blank/bin/pip install ipykernel \
&& /venv/blank/bin/python -m ipykernel install --user --name=blank-env
我希望 root python 环境具有我的
requirements/pip
文件中列出的所有包,并且我的 blank-env
环境为空。
但是,当我在 docker 容器中运行
jupyter lab
并选择 blank-env
内核时,它似乎可以访问我的需求文件中的所有包。我在这里做错了什么?
1.检查内核配置:确保在空白环境中安装 ipykernel 时,在安装之前激活虚拟环境。
FROM python:3.11.5-bookworm
ADD requirements/pip /requirements/pip
RUN pip install -r /requirements/pip
RUN python -m venv /venv/blank
RUN /venv/blank/bin/pip install ipykernel
RUN /venv/blank/bin/python -m ipykernel install --user --name=blank-env
2.重启Jupyter实验室服务器
3.验证内核环境
import sys
sys.executable
这将显示内核正在使用的 Python 可执行文件的路径。如果它指向全局 Python 环境,则可能存在内核安装或激活方式的问题。