将Google CoLab连接到Google Compute Engine实例上的运行时
问题描述
我正在尝试将Google CoLab上的Jupyter笔记本连接到GCP EC2实例上的运行时。我遵循此CoLab文档说明Link
采取的步骤:
在本地设置Jupyter服务器
pip install jupyter_http_over_ws && jupyter serverextension enable --py jupyter_http_over_ws jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
在GCP上创建并启动EC2实例
SSH进入EC2实例并使用转发本地端口:
gcloud beta compute ssh --zone "europe-west2-c" "<ec2-instance-name>" --project "<project-name>" -- -L 8888:localhost:8888
尝试转发端口的错误消息:
bind [127.0.0.1]:8888: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 8888
Could not request local forwarding.
我还尝试将EC2实例直接连接到CoLab,但无法成功。对于最后一步,我假设将jupyter url复制到CoLab本地运行时。我如何修复此问题?
解决方案
我算出来了。
步骤:
启动实例
连接到实例并将远程实例上的端口转发到本地计算机
gcloud beta compute ssh --zone "<zone>" "<ec2-instance-name>" --project "<project-name>" -- -L 8888:localhost:8888
安装jupyter笔记本和jupyter_http_over_ws(如果未在 远程实例已经。
然后启用
jupyter_http_over_ws
:jupyter serverextension enable --py jupyter_http_over_ws
在远程实例上启动Jupyter服务器
jupyter notebook --NotebookApp.allow_origin='https://colab.research.google.com' --port=8888 --NotebookApp.port_retries=0
将服务器URL复制到CoLab
相关文章