MENU

搭建云端Jupyter,有浏览器的地方就有Python

January 3, 2019 • Read: 444 • python

Jupyter Notebook是数据科学/机器学习社区内一款非常流行的工具

最近入手了一台新的服务器,于是我想到将Jupyter搭建到服务器上,在任何只要有浏览器的地方都能进行Python编程

我的服务器是ubuntu的,不同系统根据自己系统的命令进行操作

创建用户、切换用户

首先在root用户下打开防火墙8888端口,这是提供Jupyter服务的端口

sudo ufw allow 8888

然后创建一个用户名为mathor的用户

sudo adduser mathor

输入密码并确认密码

然后一路Enter,默认就行,最后输入y确认一下

然后切换到新用户,并进入当前用户的主目录

su mathor
cd ~

下载并安装Anaconda

Anaconda的Linux下载网址是https://www.anaconda.com/download/#linux

截止到今天的最新版本是2018.12,所以通过命令下载

wget https://repo.continuum.io/archive/Anaconda3-2018.12-Linux-x86_64.sh

下载完成后运行

bash Anaconda3-2018.12-Linux-x86_64.sh

之后会有一个协议,输入yes,然后会有安装路径选择,按下Enter就是默认路径,之后会问是否要加入到环境变量,输入yes,之后问要不要安装vs code,输入no。最后安装完成,输入

jupyter

按两下tab键提示很多东西,就证明通过Anaconda安装Jupyter成功了,如果没有反应,同时发现输入conda没有命令,那么执行下面两步就可以了

echo 'export PATH="~/anaconda3/bin:$PATH"'>>~/.bashrc
source ~/.bashrc

配置Jupyter

运行命令

jupyter-notebook --generate-config

这时看到一个反馈

Writing default config to: /home/mathor/.jupyter/jupyter_notebook_config.py

这就是配置的目录。然后运行命令

jupyter-notebook password

输入密码并确认,这就是以后登陆的密码

输入命令

vi .jupyter/jupyter_notebook_config.json

可以看到有一个字符串 sha1:xxxxxxx,复制下来,一会要用到。然后运行命令

mkdir jupyterdata

创造一个文件夹存放jupyter的代码。最后配置端口与代码存放路径

vi .jupyter/jupyter_notebook_config.py

随便在空白处写上下面的关键配置即可:

# 设置默认目录
c.NotebookApp.notebook_dir = u'/home/mathor/jupyterdata'
# 允许通过任意绑定服务器的ip访问
c.NotebookApp.ip = '*'
# 用于访问的端口
c.NotebookApp.port = 8888
# 不自动打开浏览器
c.NotebookApp.open_browser = False
# 设置登录密码
c.NotebookApp.password = u'sha1:xxxxxxxxxxxxxxxx'

保存并退出(按下ESC,输入:wq回车)

然后运行

jupyter-notebook

如果出现下面的报错

PermissionError: [Errno 13] Permission denied: '/run/user/xxxx/jupyter'

则输入

export XDG_RUNTIME_DIR="/home/mathor/anaconda3"
source .bashrc
jupyter-notebook

然后就OK了

本地测试

随便在一个客户机浏览器里输入http://ip:8888就可以进入Jupyter的登陆界面了

补充说明

如果想Jupyter持续在后台运行,那么在运行Jupyter的时候不输入jupyter-notebook,改为输入jupyter-notebook &即可

Archives Tip
QR Code for this page
Tipping QR Code
Leave a Comment

已有 2 条评论
  1. 朱文骁 朱文骁

    正在试试

  2. 朱文骁 朱文骁

    这个后台运行最好用nohup jupyter-notebook &