在码头工具上验证Jupyter笔记本

Dee*_*ran 6 docker jupyter-notebook

我正在尝试在我的Mac笔记本电脑上安装jupyter笔记本电脑.有以下选项

docker run -dit --rm -p 8888:8888 gcr.io/tensorflow/tensorflow
Run Code Online (Sandbox Code Playgroud)

容器启动,我可以按照预期在http:// [cointainer-IP]:8888进行评估.

然而,它需要我进入身份验证屏幕并要求提供令牌.如何获取令牌,我应该在docker容器中查找哪个日志

And*_*inn 7

stdout容器会给你是否有一个令牌,为您与登录一个特殊的URL。您可以在前台运行(没有-d),也可以仅使用docker logs <container_id>. 在那里,您应该会看到如下输出:

[I 16:57:05.859 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 16:57:05.871 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 16:57:05.877 NotebookApp] Serving notebooks from local directory: /notebooks
[I 16:57:05.877 NotebookApp] 0 active kernels 
[I 16:57:05.877 NotebookApp] The Jupyter Notebook is running at: http://[all ip addresses on your system]:8888/?token=42685cc246e6571c0f16417327fbf4c398061125c00edea5
[I 16:57:05.877 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 16:57:05.878 NotebookApp] 

    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        http://localhost:8888/?token=42685cc246e6571c0f16417327fbf4c398061125c00edea5
Run Code Online (Sandbox Code Playgroud)

  • 附加到此输出的令牌对我不起作用。我不断收到“无效令牌”。任何想法为什么这是/如何解决它? (7认同)
  • 这对我不起作用。我不断收到“无效令牌”作为 @jblakeley 。但是在通过`lsof -ti:8888 | 杀死使用端口8888的进程之后 xargs kill -9` 我不再收到烦人的令牌消息 (5认同)
  • 确保您的主机上没有运行 jupyter。这将干扰令牌输入,因为两者都位于端口 8888 上。停止我的主机上的本地版本的 jupyter 并输入令牌解决了我的问题 (3认同)

Ren*_* B. 6

--NotebookApp.token=''您还可以使用脚本的参数禁用令牌或添加自定义令牌start-notebook.sh。从终端处理令牌通常会导致错误并且令人不舒服。

禁用令牌

简单如下:

docker run -d -p 8888:8888 jupyter/pyspark-notebook start-notebook.sh --NotebookApp.token=''
Run Code Online (Sandbox Code Playgroud)

定制代币

但是,不建议这样做,您可以选择定义一个简单的密码:

docker run -d -p 8888:8888 jupyter/pyspark-notebook start-notebook.sh --NotebookApp.token='MY_EASY_PASSWORD'
Run Code Online (Sandbox Code Playgroud)