阿里云搭建JupyterLab服务教程

安装Anaconda

  1. 先下载Anaconda 包
1
2
3
4
[root@iZwz9aoyyban4v42tgyml2Z ~]# mkdir anaconda
[root@iZwz9aoyyban4v42tgyml2Z ~]# cd anaconda/
[root@iZwz9aoyyban4v42tgyml2Z anaconda]# yum -y install wget
[root@iZwz9aoyyban4v42tgyml2Z anaconda]# wget https://repo.anaconda.com/archive/Anaconda3-2020.11-Linux-x86_64.sh
  1. 安装
1
2
3
4
5
6
7
[root@iZwz9aoyyban4v42tgyml2Z anaconda]# du -sh ./
529M ./
# 验证anaconda
[root@iZwz9aoyyban4v42tgyml2Z anaconda]# md5sum Anaconda3-2020.11-Linux-x86_64.sh
4cd48ef23a075e8555a8b6d0a8c4bae2 Anaconda3-2020.11-Linux-x86_64.sh
[root@iZwz9aoyyban4v42tgyml2Z anaconda]#
[root@iZwz9aoyyban4v42tgyml2Z anaconda]# bash Anaconda3-2020.11-Linux-x86_64.sh
  1. 配置环境变量
1
2
3
4
5
6
7
8
9
10
11
12
13
# 进入道anaconda3的根目录bin下
[root@iZwz9aoyyban4v42tgyml2Z bin]# pwd
/root/anaconda3/bin
[root@iZwz9aoyyban4v42tgyml2Z bin]# vim ~/.bashrc
You have new mail in /var/spool/mail/root

# 在.bashrc下添加以下内容:
# Anaconda
export PATH="/root/anaconda3/bin:$PATH"

[root@iZwz9aoyyban4v42tgyml2Z bin]# source ~/.bashrc
[root@iZwz9aoyyban4v42tgyml2Z bin]# conda -V
conda 4.9.2

复现环境

  1. 安装虚拟环境
1
[root@iZwz9aoyyban4v42tgyml2Z bin]# conda create -n jabari python=3.7

安装Jupyter Lab服务

  1. 配置密码
1
2
3
4
5
6
7
8
9
10
[root@iZwz9aoyyban4v42tgyml2Z bin]# pip install jupyter jupyterlab
# 进入到ipython配置密码

In [1]: from notebook.auth import passwd

In [2]: passwd()
Enter password:
Verify password:
# 复制下面的输出内容,后面配置登陆密码需要。
Out[2]: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
  1. 生成配置文件
1
2
3
[root@iZwz9aoyyban4v42tgyml2Z bin]# jupyter lab --generate-config
Writing default config to: /root/.jupyter/jupyter_notebook_config.py

  1. 修改配置文件
1
[root@iZwz9aoyyban4v42tgyml2Z bin]# vim /root/.jupyter/jupyter_notebook_config.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 将ip设置为*,意味允许任何IP访问
c.NotebookApp.ip = '*'
# 这里的密码就是上边我们生成的那一串
c.NotebookApp.password = u'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
# 服务器上并没有浏览器可以供Jupyter打开
c.NotebookApp.open_browser = False
# 监听端口设置为8888或其他自己喜欢的端口
c.NotebookApp.port = 6888
# 我们可以修改jupyter的工作目录,也可以保持原样不变,如果修改的话,要保证这一目录已存在
c.MappingKernelManager.root_dir = '/root/jupyter_run'
# 允许远程访问
c.NotebookApp.allow_remote_access = True
# 配置jupyter lab文件存放路径,随喜好修改
c.NotebookApp.notebook_dir = '/'
1
2
3
[root@iZwz9aoyyban4v42tgyml2Z ~]# mkdir /root/jupyter_run
[root@iZwz9aoyyban4v42tgyml2Z ~]# ls
anaconda3 anaconda_bak jupyter_run node_modules package-lock.json

配置阿里云服务器的安全组规则

  1. 登陆阿里云服务器控制台,选择配置安全组规则;

  1. 进入后选择配置规则;

  1. 配置TCP给6888端口;

启动Jupyter服务测试

1
2
3
4
5
6
7
8
9
10
[root@iZwz9aoyyban4v42tgyml2Z bin]# jupyter lab --allow-root
[I 15:33:08.598 LabApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 15:33:08.791 LabApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 15:33:09.024 LabApp] JupyterLab extension loaded from /root/anaconda3/lib/python3.8/site-packages/jupyterlab
[I 15:33:09.024 LabApp] JupyterLab application directory is /root/anaconda3/share/jupyter/lab
[I 15:33:09.026 LabApp] Serving notebooks from local directory: /root/anaconda3/bin
[I 15:33:09.026 LabApp] Jupyter Notebook 6.1.4 is running at:
[I 15:33:09.027 LabApp] http://iZwz9aoyyban4v42tgyml2Z:6888/
[I 15:33:09.027 LabApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).

配置JupyterLab后台运行

前面配置的jupyter lab服务只有在当前终端存在时才会保持运行,当关闭当前终端时,当前终端的服务进程就会被kill掉,这里需要使Jupyter Lab时刻保持运行。

1
2
3
4
5
6
[root@iZwz9aoyyban4v42tgyml2Z ~]# nohup jupyter lab --allow-root &
[1] 15760

# 查看后台进程,如果要kill掉该进程,可以使用`kill -9 15760(pid)`命令去杀掉服务
[root@iZwz9aoyyban4v42tgyml2Z ~]# ps -ef | grep -v grep | grep jupyter
root 15760 14926 1 15:38 pts/0 00:00:00 /root/anaconda3/bin/python3.8 /root/anaconda3/bin/jupyter-lab --allow-root

OK,配置成功,开始愉快的写代码吧!

关于服务器

1024程序员节+双十一阿里云上云大优惠,大家伙有闲钱的不妨整台云服务器来玩玩?

我们这些打码的,谁不曾梦想有一台自己的云服务器?走到哪码就打到哪儿,想想就很nice!

趁着现在阿里云搞促销,2core2G服务器才72一年,相当于每月6元!想整的小伙伴动起来,一起来整台服务器玩玩吧!

有想购买服务器的盆友可以通过点击=>我的分享链接<=查看上云钜惠哦~

最后,祝大家玩的开心!