参考:在服务器搭建Jupyter notebook

安装

为了环境比较轻,使用pip安装,非Anaconda;

# 创建Python虚拟环境
mkvirtualenv env_Jupyter # 安装
pip install jupyter

配置

准备密码密文

由于我们将以需要密码验证的模式启动 Jupyter,所以我们要预先生成所需的密码对应的密文。

使用下面的命令,创建一个密文的密码:

python -c "import IPython;print IPython.lib.passwd()"

执行后需要输入并确认密码,然后程序会返回一个 'sha1:...' 的密文,我们接下来将会用到它。

生成配置文件

我们使用 --generate-config 来参数生成默认配置文件:

jupyter notebook --generate-config --allow-root

生成的配置文件在 /root/.jupyter/ 目录下(根据你的Linux账号而定),可以点此编辑配置。

修改配置

然后在配置文件最下方加入以下配置:

# 运行所有IP访问
c.NotebookApp.ip = '*'
c.NotebookApp.allow_root = True
# 启动时是否自动打开浏览器
c.NotebookApp.open_browser = False
# 指定端口号
c.NotebookApp.port = 9001
# 密码设置
c.NotebookApp.password = u'刚才生成的密文(sha:...)'
# jupyter notebook工作目录
c.ContentsManager.root_dir = '/home/chenjunpeng/Jupyter/'

其中:

c.NotebookApp.password 请将上一步中密文填入此项,包括 sha: 部分。

你也可以直接配置或使用 Nginx 将服务代理到 80 或 443 端口。

启动

  • 直接启动

    使用以下指令启动 Jupyter Notebook:

    jupyter notebook

    此时,访问 http://182.51.66.219:9001 即可进入 Jupyter 首页。

  • 创建 Notebook

    • 进入【首页】首先需要输入前面步骤中设置的密码。
    • 然后点击右侧的【 new 】,选择 Python3 新建一个 notebook,这时跳转至编辑界面。
    • 现在我们可以看到 c.ContentsManager.root_dir 目录中出现了一个 Untitled.ipynb 文件,这就是我们刚刚新建的 Notebook 文件。我们建立的所有 Notebook 都将默认以该类型的文件格式保存。
  • 后台运行

    直接以 jupyter notebook 命令启动 Jupyter 的方式在连接断开时将会中断,所以我们需要让 Jupyter 服务在后台常驻。

    先按下 Ctrl + C 并输入 y 停止 Jupyter 服务,然后执行以下命令:

    nohup jupyter notebook > /data/jupyter/jupyter.log 2>&1 &

    该命令将使得 Jupyter 在后台运行,并将日志写在 /data/jupyter/jupyter.log 文件中。

  • 准备后续步骤的 Notebook

    为了后面实验中实验室的步骤检查器能够更好的工作,此时我们使用以下命令预先创建几份 ipynb 文件:

    cd /data/jupyter/root
    cp Untitled.ipynb first.ipynb
    cp Untitled.ipynb matplotlib.ipynb
    cp Untitled.ipynb tensorflow.ipynb
    rm -f Untitled.ipynb

CentOS下部署Jupyter的更多相关文章

  1. Linux CentOS下部署Java Web项目

    本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...

  2. java部署系列:CentOS下部署Java7/Java8

    一.前言 1.本文主要内容 CentOS下部署OracleJDK CentOS下部署OpenJDK 2.适用范围与本篇环境 适用范围 1.CentOS 6+2.Java 7+ 本篇环境 1.CentO ...

  3. Centos下部署Flask

    尝试在Centos6.5下部署Flask应用并成功,记录一下步骤,参数为什么这样配置还需要再研究uwsgi和Nginx才能回答. Python版本升级2.7 测试机器centos6.5默认自带的pyt ...

  4. CentOS 下部署Nginx+Gunicorn+Supervisor部署Flask项目

    原本之前有一部分东西是在Windows Server,但是由于Gunicorn不支持Windows部署起来颇为麻烦.最近转战CentOS,折腾一段时间,终于简单部署成功.CentOS新手,作为一个总结 ...

  5. 【服务器】CentOS下部署运行NodeJs Web App

    NodeJs Web App测试完成后,要怎么部署呢?介绍两个不错的方案 已知以下情景: 我要为 「kenniu」这个项目做配置 它的入口文件在 「/path/to/entry.js」 运行的User ...

  6. 在centos下部署docker内网私服

    Docker内网私服:docker-registry with nginx & ssl on centos docker-registry既然也是软件应用,自然最简单的方法就是使用官方提供的已 ...

  7. centos下部署NTP时间服务器同步环境记录

    1)服务端部署 安装所需软件包 [root@test ~]# yum -y install ntp ntpdate 服务端自己先手工同步一次时间. [root@test ~]# ntpdate ntp ...

  8. 如何在centos下部署Node环境

    从今年开始,养车之家的PC 和 M端 的站点 ,服务器从tomcat全部改成了Node,无论在测试环境.准生产.正式环境,我们都需要在服务器进行Node的部署,在这里我给大家详细说明下Node在lin ...

  9. CentOS 下部署 ASP.NET Core环境

    一.安装dotnet 1.下载运行环境 https://www.microsoft.com/net/download/linux 下载Runtime:https://go.microsoft.com/ ...

随机推荐

  1. Java之Https请求

    import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import ...

  2. [转]OpenGL通过VBO实现顶点数组绘制顶点

    #include "stdlib.h" #include <OpenGL/glext.h> #include <GLUT/GLUT.h> #define B ...

  3. OpenCV——SURF特征检测、匹配与对象查找

    SURF原理详解:https://wenku.baidu.com/view/2f1e4d8ef705cc1754270945.html SURF算法工作原理 选择图像中的POI(Points of i ...

  4. 【webstorm】免费使用

    http://idea.imsxm.com/       测试过ok 后期追加(20180316更新为) http://idea.codebeta.cn/ 后期追加(20180502更新为) http ...

  5. Java Web乱码分析及解决方案

    1.  什么是URL编码. URL编码是一种浏览器用来打包表单输入的格式,浏览器从表单中获取所有的name和其对应的value,将他们以name/value编码方式作为URL的一部分或者分离的发送到服 ...

  6. iscsi target IET架构

    IET(iSCSI Enterprise Target)是内核态实现的iscsi target,相比于用户态实现的target(比如tgt),iet比较稳定,并且也算是历史悠久,io都直接经过内核态, ...

  7. 2.2《想成为黑客,不知道这些命令行可不行》(Learn Enough Command Line to Be Dangerous)——列表

    也许最常用的Unix命令是ls了,它是'list'的简写(Listing 8) Listing 8 用ls以列表的形式显示文件和目录(内容输出跟各自电脑有关) $ ls Desktop Downloa ...

  8. Linux 设置core dump

    Linux 设置core dump

  9. 3.RapidIO串行物理层的包传输过程

    转自https://www.cnblogs.com/liujinggang/p/10005431.html 一.引言 前几篇文章已经谈到RapidIO的协议,串行物理层与控制符号. RapidIO协议 ...

  10. 洛咕 P4474 王者之剑

    宝石只能在偶数秒取到,假设有一个宝石在奇数秒取到了,那么上一秒是偶数秒,在上一秒的时候这里的宝石就没了. 相邻的两个宝石不能同时取,很显然,先取一块,那么这是偶数秒,取完了这一块之后相邻的都没了. 只 ...