jupyter notebook停止SSL错误

时间:2018-03-15 03:58:22

标签: python docker ssl jupyter-notebook jupyter

我作为非root用户在ubuntu 16.04 docker容器中运行jupyter笔记本,并通过.pem文件配置SSL。我的问题是,我无法执行jupyter notebook stop $port命令来停止正在运行的服务器。

我通过执行sudo HOME=/home/seiji -u seiji jupyter notebook来启动笔记本,以更改HOME环境变量(已知为seiji)。

我可以通过以用户(jupyter notebook list)运行它并执行seiji环境变量来执行通常的JUPYTER_RUNTIME_DIR命令,其中jupyter查找包含服务器的json文件信息。例如:sudo JUPYTER_RUNTIME_DIR=/jupyter/runtime -u seiji jupyter notebook list正确返回: https://localhost:8888/ :: /jupyter/notebooks(我以通常的方式在配置文件中指定运行时目录)。

我的问题是,我无法以类似的方式弄清楚如何执行jupyter notebook stop 8888。如果我按原样运行它,它以root身份运行并告诉我There are no running servers。如果我将其作为user:seiji运行,我会遇到SSL问题。如:

> sudo JUPYTER_RUNTIME_DIR=/jupyter/runtime -u seiji jupyter notebook stop 8888 

返回错误。它开始于:Shutting down server on port 8888 ...,但随后打印以下内容:

10上的SSL错误(' :: 1',8888,0,0):[SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败(_ssl.c:645)

我的猜测是它尝试了一个' http'要访问服务器的地址而不是' https',但我无法弄清楚如何更改此内容。

我还尝试传递环境变量JUPYTER_CONFIG_DIR,其中包含配置文件,其中列出了.pem文件的位置c.NotebookApp.certfile = u'/jupyter/certs/mycert.pem'。我还尝试使用--certfile=[location]从cmdline运行时明确输入证书的位置,但似乎忽略了这一点。有没有人有任何想法?

0 个答案:

没有答案