如何在gcloud计算引擎中启动jupyter笔记本

时间:2017-06-18 22:22:15

标签: google-compute-engine jupyter-notebook

我想使用谷歌云计算引擎的jupyter笔记本。当我尝试通过命令行启动它时,我无法使用浏览器打开笔记本。

请告诉我如何操作。

2 个答案:

答案 0 :(得分:1)

看起来您正在尝试在VM上启动Jupyter笔记本服务器,并希望使用VM的外部IP访问它(假设您没有在VM上禁用外部IP选项)。

您需要执行以下操作:

  1. 修改jupyter_notebook_config.py目录中的~/.jupyter。请仔细检查what you need to modify以及如何secure your notebook server,因为Jupyter笔记本默认只监听环回接口(即127.0.0.1又名localhost)。
  2.   

    您应取消注释的最小配置选项集   jupyter_notebook_config.py中的修改如下:

    # Set options for certfile, ip, password, and toggle off
    # browser auto-opening
    c.NotebookApp.certfile = u'/absolute/path/to/your/certificate/mycert.pem'
    c.NotebookApp.keyfile = u'/absolute/path/to/your/certificate/mykey.key'
    # Set ip to '*' to bind on all interfaces (ips) for the public server
    c.NotebookApp.ip = '*'
    c.NotebookApp.password = u'sha1:bcd259ccf...<your hashed password here>'
    c.NotebookApp.open_browser = False
    
    # It is a good idea to set a known, fixed port for server access
    c.NotebookApp.port = 9999
    
    1. 您需要修改防火墙规则,以允许进入您刚刚在上一步中配置的端口(在VM上)的流量。为此,我将建议tag based firewall rules,以便您可以控制防火墙规则适用的VM。
    2.   

      网络使用网络标记来标识哪些实例   受某些防火墙规则和网络路由的限制。例如,如果   你有几个服务于大型网站的VM实例标签   这些实例使用共享的单词或术语,然后使用该标记   应用允许HTTP访问这些实例的防火墙规则。标签   也反映在元数据服务器中,因此您可以使用它们   应用程序在您的实例上运行创建防火墙时   规则,您可以提供sourceRangessourceTags,但不能同时提供。{/ p>

      # Assuming Jupyter notebook is running on port 9999
      # Add a new tag based firewall rule to allow ingress tcp:9999
      gcloud compute firewall-rules create rule-allow-tcp-9999 --source-ranges 0.0.0.0/0 --target-tags allow-tcp-9999 --allow tcp:9999
      
      # Add the allow-tcp-9999 target tag to the VM named say 'vm-1'
      gcloud compute instances add-tags vm-1 --tags allow-tcp-9999
      
      # If you want to list all the GCE firewall rules
      gcloud compute firewall-rules list
      

      可能需要几秒钟到几分钟才能使更改生效。

      或者,您也可以使用Google Cloud Console代替gcloud来配置防火墙规则。您可以查看详细解释的this answer

答案 1 :(得分:0)

您还可以“创建防火墙规则”以允许您的jupyter c.NotebookApp.port号码 refer this image协议和端口设置为tcp:<jupyter port number>