安装 Jupyter Notebook (这里虽然是对centos和Python2的,但是在Ubuntu16.04,Python3同样可以照着弄)

  • Jupyter Notebook 简介
    Jupyter Notebook 是一个开源的 Web 应用程序,可以用来创建和共享包含动态代码、方程式、可视化及解释性文本的文档。
    其应用于包括:数据整理与转换,数值模拟,统计建模,机器学习等等。
    更多信息请见 官网 。
  • 检查 Python 环境
    CentOS 7.2 中默认集成了 Python 2.7,可以通过下面命令检查 Python 版本:
    python --version
  • 安装 pip
    pip 是一个 Python 包管理工具,我们使用 yum 命令来安装该工具:
    yum -y install python-pip
    使用下面命令升级 pip 到最新版本:
    pip install --upgrade pip
  • 安装相关依赖
    安装 Jupyter 过程中还需要其他一些依赖,我们使用以下命令安装他们:
    yum -y groupinstall "Development Tools"
    yum -y install python-devel
  • 配置虚拟环境

    安装 virtualenv

    我们将为 Jupyter 创建一个独立的虚拟环境,与系统自带的 Python 隔离开来。为此,先安装 virtualenv 库:
    pip install virtualenv

    创建虚拟环境

    创建一个专门的虚拟环境,并直接激活进入该环境:
    virtualenv venv
    source venv/bin/activate
  • 使用 pip 安装 Jupyter
    我们使用 pip 命令安装 Jupyter:
    pip install jupyter 

配置 Jupyter Notebook

  • 建立项目目录
    我们先为 Jupyter 相关文件准备一个目录:
    mkdir /data/jupyter
    cd /data/jupyter
    再建立一个目录作为 Jupyter 运行的根目录:
    mkdir /data/jupyter/root
  • 准备密码密文
    由于我们将以需要密码验证的模式启动 Jupyter,所以我们要预先生成所需的密码对应的密文。

    生成密文

    使用下面的命令,创建一个密文的密码:
    python -c "import IPython;print IPython.lib.passwd()"
    执行后需要输入并确认密码,然后程序会返回一个 'sha1:...' 的密文,我们接下来将会用到它。
  • 修改配置

    生成配置文件

    我们使用 --generate-config 来参数生成默认配置文件:
    jupyter notebook --generate-config --allow-root
    生成的配置文件在 /root/.jupyter/ 目录下,可以点此编辑配置

    修改配置

    然后在配置文件最下方加入以下配置:
    c.NotebookApp.ip = '*'
    c.NotebookApp.allow_root = True
    c.NotebookApp.open_browser = False
    c.NotebookApp.port = 8888
    c.NotebookApp.password = u'刚才生成的密文(sha:...)'
    c.ContentsManager.root_dir = '/data/jupyter/root'
    其中:
    • c.NotebookApp.password 请将上一步中密文填入此项,包括 sha: 部分。
    你也可以直接配置或使用 Nginx 将服务代理到 80 或 443 端口。

启动 Jupyter Notebook

  • 直接启动
    使用以下指令启动 Jupyter Notebook:
    jupyter notebook
    此时,访问 http://115.159.91.170:8888 即可进入 Jupyter 首页。
  • 创建 Notebook
    • 进入【首页】首先需要输入前面步骤中设置的密码。
    • 然后点击右侧的【 new 】,选择 Python2 新建一个 notebook,这时跳转至编辑界面。
    • 现在我们可以看到 /data/jupyter/root/ 目录中出现了一个 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

在服务器搭建Jupyter notebook的更多相关文章

  1. 搭建Jupyter Notebook服务器

    昨天发了Jupyter的使用,补一篇Jupyter服务器的搭建~ 一.搭建Jupyter 1.安装 使用virtualenv建虚拟环境.在虚拟环境中安装jupyter.matplotlib等等需要的库 ...

  2. 使用docker搭建jupyter notebook / jupyterlab

    说明 由于官方镜像实在是不怎么好用,所以我自己做了一个优化过的jupyter notebook的镜像 notebook_hub,使用我这个镜像搭建容器非常简单,下面就基于这个notebook_hub来 ...

  3. Python - 搭建Jupyter notebook环境

    1- Jupyter简介 HomePage:https://jupyter.org/ 安装指南:https://jupyter.org/install.html 官方文档:https://jupyte ...

  4. 配置本地访问远程Linux系统服务器的jupyter notebook

    环境情况 远程服务器上配置了anaconda 本地主机没有安装anaconda(其实安不安装都无所谓,有浏览器就行) 配置步骤如下 登录远程服务器 生成配置文件 jupyter notebook -- ...

  5. 【机器学习 Azure Machine Learning】使用Aure虚拟机搭建Jupyter notebook环境,为Machine Learning做准备(Ubuntu 18.04,Linux)

    问题描述 在Azure的VM中已经安装好Jupyter,并且通过jupyter notebook --port 9999 已经启动,但是通过本机浏览器,访问VM的公网IP,则始终是不能访问的错误.(T ...

  6. 使用阿里云服务器部署jupyter notebook远程访问

    安装annaconda 与jupyter notebook annaconda在已经自带了jupyter notebook.jupyter lab.ipython 等一系列工具,不需要再单独安装这些工 ...

  7. 使用centos linux vps搭建jupyter notebook踩坑日记

    今天我尝试用vps搭建在线jupyter notebook网站时遇到了这样一个问题: [W 21:48:07.243 NotebookApp] SSL Error on 9 ('171.115.101 ...

  8. vps上搭建jupyter notebook远程服务

    安装anaconda 使用如下命令下载: wget https://repo.continuum.io/archive/Anaconda3-5.0.0.1-Linux-x86_64.sh 如果非roo ...

  9. 在树莓派上搭建jupyter notebook server

    自从搬家后,树莓派闲置了好一段时间,最近打算将其利用起来.想来想去,搭个jupyter notebook用要靠谱的,毕竟经常要实验一些Python脚本. 具体过程参考以下链接: https://www ...

随机推荐

  1. P4774 [NOI2018]屠龙勇士

    P4774 [NOI2018]屠龙勇士 先平衡树跑出打每条龙的atk t[] 然后每条龙有\(xt \equiv a[i](\text{mod }p[i])\) 就是\(xt+kp[i]=a[i]\) ...

  2. 【BZOJ3555】企鹅QQ

    蛤希. 用map会T. 只需要枚举删掉哪个字符,然后算出每个的hash值,sort一遍就行了. 用map会T!!! // It is made by XZZ #include<cstdio> ...

  3. [洛谷P2057][bzoj1934]善意的投票(最大流)

    题目描述 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉.对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神.虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来 ...

  4. 【Java源码解析】ThreadLocal

    简介 线程本地变量,用于同一线程之间的传递.每一个线程对象都保存在两个ThreadLocalMap,threadLocals和inheritableThreadLocals,后者会继承父线程的本地变量 ...

  5. c++引用与指针的关系

    目录 1.引用的概念及用法 2.引用做参数 3.引用做返回值 4.汇编层看引用的特性 5.引用和指针的区别和联系: 更多内容请移步专栏:https://blog.csdn.net/column/det ...

  6. 关于摄像头PCB图设计经验谈

    摄像头PCB设计,因为客观原因等.容易引起干扰这是个涉及面大的问题.我们抛开其它因素,仅仅就PCB设计环节来说,分享以下几点心得,供参考交流: 1.合理布置电源滤波/退耦电容:一般在原理图中仅画出若干 ...

  7. python时间模块详解(time模块)

    time 模块 -- 时间获取和转换 time 模块提供各种时间相关的功能 在 Python 中,与时间处理有关的模块包括:time,datetime 以及 calendar 必要说明: 虽然这个模块 ...

  8. XSS分类&危害&防御

    XSS(跨站脚本)漏洞是什么? 在网页中插入恶意的js脚本,由于网站没对其过滤,当用户浏览时,就会触发脚本,造成XSS攻击 XSS分类? 1.反射型 用户输入的注入代通过浏览器传入到服务器后,又被目标 ...

  9. Netty 粘包/拆包应用案例及解决方案分析

    熟悉TCP变成的可以知道,无论是客户端还是服务端,但我们读取或者发送消息的时候,都需要考虑TCP底层粘包/拆包机制,下面我们先看一下TCP 粘包/拆包和基础知识,然后模拟一个没有考虑TCP粘包/拆包导 ...

  10. Django 前后端不分离 代码结构详解

    Demo:  hello_pycharm 根目录文件:hello_pycharm [__init__.py  __pycache__  settings.py  urls.py  wsgi.py] A ...