在本地主机上启动 Jupyter Notebook 会导致“[Errno 49] 无法分配请求的地址”,但是 ip=127.0.0.1 有效
Launching Jupyter Notebook on localhost results in '[Errno 49] Can't assign requested address', however ip=127.0.0.1 works
尝试启动 Jupyter Notebook 时出现以下错误
$ Jupyter Notebook
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.7/bin/jupyter-notebook", line 11, in <module>
sys.exit(main())
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jupyter_core/application.py", line 268, in launch_instance
return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/traitlets/config/application.py", line 663, in launch_instance
app.initialize(argv)
File "</Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/decorator.py:decorator-gen-7>", line 2, in initialize
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/traitlets/config/application.py", line 87, in catch_config_error
return method(app, *args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/notebook/notebookapp.py", line 1720, in initialize
self.init_webapp()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/notebook/notebookapp.py", line 1482, in init_webapp
self.http_server.listen(port, self.ip)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tornado/tcpserver.py", line 151, in listen
sockets = bind_sockets(port, address=address)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tornado/netutil.py", line 174, in bind_sockets
sock.bind(sockaddr)
OSError: [Errno 49] Can't assign requested address
但是,当我指定 127.0.0.1 的 IP 地址(即不是 'localhost')时,Jupyter Notebook --ip=127.0.0.1
它工作得很好。
此外,当我 ping 本地主机时 returns 本地主机实际上是 127.0.0.1。
$ ping localhost
PING localhost.localdomain (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.034 ms
我已经检查了 etc/hosts 和 private/etc/hosts,但都没有指定本地主机(或任何与此相关的内容)。
我正在尝试解决此问题,因为我在 PyCharm 中 运行 Jupyter 笔记本,但您无法在 127.0.0.1 副 'localhost'。 (我知道没有简单的快捷方式,如果我错了请纠正我)我可以在 Pycharm 中的 127.0.0.1 上启动,但它需要多个步骤并且很麻烦。我只是希望它通过其预期的 'localhost' 作为默认配置来工作。
答案归功于@jackw11111
为您的 jupyter notebook 生成一个配置文件
$ jupyter notebook --generate-config
使用您喜欢的编辑器进入这个新的配置文件
$ nano ~/.jupyter/jupyter_notebook_config.py
将以下行添加到文件中,使其成为要侦听的默认服务器
c.NotebookApp.ip = '127.0.0.1'
尝试启动 Jupyter Notebook 时出现以下错误
$ Jupyter Notebook
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.7/bin/jupyter-notebook", line 11, in <module>
sys.exit(main())
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/jupyter_core/application.py", line 268, in launch_instance
return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/traitlets/config/application.py", line 663, in launch_instance
app.initialize(argv)
File "</Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/decorator.py:decorator-gen-7>", line 2, in initialize
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/traitlets/config/application.py", line 87, in catch_config_error
return method(app, *args, **kwargs)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/notebook/notebookapp.py", line 1720, in initialize
self.init_webapp()
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/notebook/notebookapp.py", line 1482, in init_webapp
self.http_server.listen(port, self.ip)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tornado/tcpserver.py", line 151, in listen
sockets = bind_sockets(port, address=address)
File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/tornado/netutil.py", line 174, in bind_sockets
sock.bind(sockaddr)
OSError: [Errno 49] Can't assign requested address
但是,当我指定 127.0.0.1 的 IP 地址(即不是 'localhost')时,Jupyter Notebook --ip=127.0.0.1
它工作得很好。
此外,当我 ping 本地主机时 returns 本地主机实际上是 127.0.0.1。
$ ping localhost
PING localhost.localdomain (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.034 ms
我已经检查了 etc/hosts 和 private/etc/hosts,但都没有指定本地主机(或任何与此相关的内容)。
我正在尝试解决此问题,因为我在 PyCharm 中 运行 Jupyter 笔记本,但您无法在 127.0.0.1 副 'localhost'。 (我知道没有简单的快捷方式,如果我错了请纠正我)我可以在 Pycharm 中的 127.0.0.1 上启动,但它需要多个步骤并且很麻烦。我只是希望它通过其预期的 'localhost' 作为默认配置来工作。
答案归功于@jackw11111
为您的 jupyter notebook 生成一个配置文件
$ jupyter notebook --generate-config
使用您喜欢的编辑器进入这个新的配置文件
$ nano ~/.jupyter/jupyter_notebook_config.py
将以下行添加到文件中,使其成为要侦听的默认服务器
c.NotebookApp.ip = '127.0.0.1'