You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

PyCharm搭配Vagrant运行远程Jupyter Notebook可行吗?遇403错误

可以实现!解决PyCharm连接Vagrant远程Jupyter的403问题

当然能让PyCharm和Vagrant上的远程Jupyter Notebook正常协作!你遇到的403禁止访问问题,大概率是Jupyter的认证配置或跨域权限没设置到位,我给你一步步排查解决:

1. 修正Jupyter的核心配置(关键!)

403错误通常和认证规则、远程访问权限有关,先在Vagrant虚拟机里调整Jupyter配置:

  • 如果还没生成过配置文件,先执行:
    jupyter notebook --generate-config
    
  • 打开配置文件(路径一般是~/.jupyter/jupyter_notebook_config.py),修改以下参数:
    • 允许跨域请求(PyCharm的请求会被跨域拦截):
      c.NotebookApp.allow_origin = '*'
      
    • 明确允许远程访问:
      c.NotebookApp.allow_remote_access = True
      
    • 绑定到所有网卡,确保虚拟机的Jupyter能被主机访问:
      c.NotebookApp.ip = '0.0.0.0'
      
    • 启用密码认证,并使用哈希值而非明文密码(这是很多人踩坑的点!):
      先在虚拟机的python3环境里执行:
      from notebook.auth import passwd; passwd()
      
      输入你的密码vagrant后,会生成一串哈希值,把它复制到配置里:
      c.NotebookApp.password = '生成的哈希字符串'
      c.NotebookApp.password_required = True
      

2. 检查PyCharm的Jupyter配置细节

确保PyCharm的设置和Jupyter匹配:

  • 打开PyCharm的Settings → Tools → Jupyter Notebook
  • 选择Remote server模式
  • 填写服务器地址:http://localhost:8888(和你浏览器访问的地址一致)
  • 认证方式选Password,输入你设置的vagrant
  • 再次确认远程解释器:Settings → Project: [你的项目名] → Python Interpreter,确保选中的是Vagrant虚拟机上的python3

3. 重启服务并验证

  • 先关掉虚拟机里的Jupyter进程,再用修改后的配置重启:
    jupyter notebook --config ~/.jupyter/jupyter_notebook_config.py
    
  • 回到PyCharm,尝试新建一个Jupyter Notebook文件,或者点击"Connect to Jupyter Server"按钮,看是否能成功创建内核、执行代码

额外排查点

如果还是不行,检查这两个细节:

  • 确认Vagrant的端口转发配置正确,Vagrantfile里要有:
    config.vm.network "forwarded_port", guest: 8888, host: 8888
    
  • 检查Jupyter日志里的IP10.0.2.2是否被允许:如果配置里有c.NotebookApp.allow_ip参数,确保这个IP在白名单里,或者直接注释掉该参数允许所有IP访问

按照这些步骤调整后,PyCharm应该就能正常连接到Vagrant上的Jupyter Notebook了。

内容的提问来源于stack exchange,提问作者mrc

火山引擎 最新活动