在Conda环境中安装和运行Jupyter Notebook是一项常见且实用的任务,特别是在数据科学和机器学习项目中。以下是使用Conda安装和运行Jupyter Notebook的步骤:
- 安装Jupyter Notebook
首先,确保你的Conda是最新的。打开终端或Anaconda Prompt,然后运行以下命令来更新Conda:
conda update conda
然后,使用Conda安装Jupyter Notebook:
conda install jupyter
- 创建新的Conda环境(可选)
如果你想要在一个隔离的环境中安装Jupyter Notebook,可以创建一个新的Conda环境。例如,创建一个名为jupyter_env的环境:
conda create -n jupyter_env jupyter
- 激活Conda环境
在运行Jupyter Notebook之前,你需要激活相应的Conda环境。在Windows上,使用:
conda activate jupyter_env
在MacOS或Linux上,使用:
source activate jupyter_env
或者,使用:
conda activate jupyter_env
- 运行Jupyter Notebook
在激活了正确的Conda环境后,你可以启动Jupyter Notebook:
jupyter notebook
这将在你的默认浏览器中打开Jupyter Notebook的主界面。
- 配置(可选)
如果你需要配置Jupyter Notebook(例如,更改端口号或启用密码保护),你可以使用Jupyter的配置文件。例如,生成一个配置文件:
jupyter notebook --generate-config
然后,你可以编辑生成的配置文件(通常位于~/.jupyter/jupyter_notebook_config.py),根据你的需要进行修改。例如,更改端口号:
c.NotebookApp.port = 9999 # 将端口改为9999
6. 停止Jupyter Notebook
要停止Jupyter Notebook,你可以在运行Jupyter的终端或命令行窗口中按Ctrl+C。或者,你可以在浏览器中点击右上角的“Shutdown”按钮。
- 使用JupyterLab(可选)
如果你更喜欢使用JupyterLab(一个下一代Web界面),你可以通过Conda安装它:
conda install -c conda-forge jupyterlab
然后,启动JupyterLab:
jupyter lab
在服务器上使用Conda运行Jupyter Notebook
在服务器上使用Conda运行Jupyter Notebook的步骤如下:
1. 激活Conda环境
- 如果已有环境,直接激活:
conda activate your_env_name
- 若需新建环境:
conda create -n jupyter_env python=3.8 # 替换为所需Python版本 conda activate jupyter_env
2. 安装Jupyter Notebook
在激活的环境中安装Jupyter:
conda install jupyter
3. 配置Jupyter远程访问
生成配置文件
jupyter notebook --generate-config
配置文件通常位于 ~/.jupyter/jupyter_notebook_config.py
。
修改配置
允许远程访问:
编辑配置文件,设置:c.NotebookApp.allow_remote_access = True c.NotebookApp.ip = '0.0.0.0' # 监听所有IP c.NotebookApp.open_browser = False # 不自动打开浏览器 c.NotebookApp.port = 8888 # 指定端口(可选)
设置访问密码(可选但推荐):
运行以下命令并按提示设置密码:jupyter notebook password
如果你是在Jupyter Notebook的启动时通过命令行参数设置了密码(例如使用–NotebookApp.password),那么你可以通过以下步骤来删除密码:
停止Jupyter Notebook:首先确保Jupyter Notebook已经停止运行。
删除密码文件:Jupyter Notebook的密码存储在.jupyter/jupyter_notebook_config.json
文件中。你可以通过以下命令找到并删除这个文件中的密码设置:
jupyter notebook --generate-config
这会生成一个新的配置文件(如果之前没有的话),然后你可以编辑这个文件(通常位于~/.jupyter/jupyter_notebook_config.py
),找到并删除或注释掉与密码相关的行,例如:
# c.NotebookApp.password = u'sha1:bcd259cd6850:7e2f5.....'
将这行代码前的#去掉,或者直接删除整行。
重启Jupyter Notebook:保存配置文件后,重新启动Jupyter Notebook。现在,你应该不需要密码就可以访问了。
4. 启动Jupyter Notebook
jupyter notebook --no-browser --port=8888
--no-browser
: 不启动浏览器(服务器无图形界面)。--port
: 指定端口(默认为8888,若被占用可换为其他端口如8899)。
5. 通过SSH隧道本地访问
在本地机器执行以下命令,将服务器的Jupyter端口转发到本地:
ssh -N -L localhost:8888:localhost:8888 your_username@server_ip
-N
: 不执行远程命令。-L
: 端口转发(格式:本地端口:目标地址:目标端口
)。
6. 在本地浏览器访问
打开浏览器,输入:
http://localhost:8888
- 输入步骤3中设置的密码或启动时日志中的Token。
高级选项:后台运行Jupyter
使用nohup
nohup jupyter notebook --no-browser --port=8888 > jupyter.log 2>&1 &
- 日志输出到
jupyter.log
,可随时查看。
使用tmux(推荐)
tmux new -s jupyter_session # 新建会话
conda activate your_env
jupyter notebook --no-browser --port=8888
# 按 Ctrl+B, 再按 D 脱离会话
- 重新连接:
tmux attach -t jupyter_session
常见问题排查
- 端口冲突:更换端口号(如
--port=8899
)。 - 连接拒绝:检查服务器防火墙或云服务商安全组是否放行端口。
- Token丢失:查看服务器上的Jupyter启动日志,或通过
jupyter notebook list
获取URL。
通过以上步骤,即可在服务器通过Conda环境运行Jupyter Notebook,并通过本地浏览器安全访问。