CentOS 7安装JupyterLab3.0及配置远程访问指南

CentOS 7安装JupyterLab3.0及配置远程访问指南

前言

本文将以centos7详细介绍使用Anaconda安装JupyterLab方法步骤,包含JupyterLab配置文件修改、配置远程访问、将JupyterLab包装为系统服务并设置开启自启、使用域名访问以及配置SSL、增加内核等等。

安装JupyterLab3.0

下载并安装Anaconda

yum install -y git vim wget
wget http://mirrors.aliyun.com/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh
chmod +x Anaconda3-2021.11-Linux-x86_64.sh
bash Anaconda3-2021.11-Linux-x86_64.sh

本文使用默认安装,Anaconda安装在/root/Anaconda3。安装过程一路yes即可。

source ~/.bashrc
python -V

配置Anaconda环境并激活

conda create -n python385 --clone base
conda create -n jupyterlab --clone python385

这两步是保护Anaconda base环境。

修改pip源

pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/

JupyterLab3.0安装

conda activate jupyterlab
pip install jupyterlab==3

由于之前使用

conda install -c conda-forge jupyterlab=3会存在安装失败的情况,本文采用pip安装JupyterLab3.0。

修改JupyterLab配置文件

初始化并生成配置文件

jupyter lab --generate-config

系统会生成</root/.jupyter/jupyter_lab_config.py文件。

生成密码

ipython
from jupyter_server.auth import passwd
passwd()

输入两次密码,会生成一串加密字符。请复制并保存这串字符。

exit()

退出ipython模式

创建工作文件夹

mkdir whan

这个文件夹将用于保存你使用JupyterLab产生的文件。

修改配置文件

vim /root/.jupyter/jupyter_lab_config.py

进入配置文件。

输入小写i进入编辑模式

c.ServerApp.allow_remote_access = True  #远程访问
c.ServerApp.allow_root = True  #使用root运行
c.ServerApp.ip = '*'  #监听地址
c.ServerApp.port = 80  #端口,默认8888
c.ServerApp.root_dir = '/root/whan/'  #jupyterlab工作目录
c.ServerApp.password = 'sha1:刚刚你获得字符串'  #密码
c.ServerApp.open_browser = False  #不打开浏览器

以下配置信息可选,不了解可不配置

c.LabApp.default_url = '/lab' #路径
c.ServerApp.allow_password_change = True #网页修改密码
c.ServerApp.certfile = '' #证书
c.ServerApp.keyfile = '' #证书
  1. 先使用esc退出编辑模式
  2. 输入:wq保存文件

启动JupyterLab

现在,你可以启动JupyterLab了

jupyter lab

使用ctrl+C可以停止

进程守护

让JupyterLab在没有ssh登录的情况下能够继续运行,即成为系统服务。本文以Systemd为例

vim /usr/lib/systemd/system/myjupyter.service

输入小写i进入编辑模式

[UNIT]

#服务描述
Description=Helo JupyterLab Service
Documentation=https://www.ishelo.com
After=network.target
Wants=network.target    

[Service]

ExecStart=/root/anaconda3/envs/jupyterlab/bin/jupyter lab
Restart=on-abnormal
RestartSec=5s
KillMode=mixed
#创建私有的内存临时空间
PrivateTmp=True

[Install]

#多用户
WantedBy=multi-user.target
  1. 先使用esc退出编辑模式
  2. 输入:wq保存文件
# 更新配置
systemctl daemon-reload
# 启动服务
systemctl start myjupyter
# 设置开机启动
systemctl enable myjupyter

以下为管理命令:

# 启动服务
systemctl start myjupyter

# 停止服务
systemctl stop myjupyter

# 重启服务
systemctl restart myjupyter

# 查看状态
systemctl status myjupyter

修改语言以及增加内核

安装中文语言

JupyterLab 3.0加入中文语言界面,使用pip安装

pip install jupyterlab-language-pack-zh-CN

注意当前Anaconda环境是否为jupyterlab
也可以通过JupyterLab自带的终端执行。
然后在JupyterLab的Setting--Language切换为中文即可。

增加R Kernel

yum -y install R 
yum -y install curl 
yum -y install libcurl libcurl-devel 
yum -y install libxml2 libxml2-devel 
R
install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest'))
install.packages("IRkernel")
IRkernel::installspec(user = FALSE)
R地区选17北京

增加Julia Kernel

mkdir /usr/local/julia
cd /usr/local/julia
wget https://mirrors.ustc.edu.cn/julia-releases/bin/linux/x64/1.7/julia-1.7.1-linux-x86_64.tar.gz
tar -zxvf julia-1.7.1-linux-x86_64.tar.gz
mv julia-1.7.1/* /usr/local/julia
rm -rf  julia-1.7.1
ln -s /usr/local/julia/bin/julia /usr/bin/julia
julia
]
add IJulia
exit()

光标输入"]"会进入Pkg模式;Backspace退出Pkg模式。

配置域名访问及SSL

由于使用的是国内服务器,访问域名需要备案,图个方便,直接在已装上宝塔面板(bt.cn)备案服务器进行反向代理。
将子域名解析到宝塔面板所在服务器ip,在宝塔面板添加网站,进入反向代理,添加反向代理。

2021012801.PNG

然后修改配置文件如下:

#PROXY-START/
location  ~* \.(php|jsp|cgi|asp|aspx)$
{
    proxy_pass http://ip:端口;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
}
location /
{
    proxy_pass http://ip:端口;
    proxy_set_header Host $host;
    proxy_set_header X-Real-Scheme $scheme;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;

    # WebSocket support
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";

    proxy_read_timeout 120s;
    proxy_next_upstream error;
    # port_in_redirect on;

    add_header X-Cache $upstream_cache_status;

    #Set Nginx Cache

        add_header Cache-Control no-cache;
    expires 12h;
}

#PROXY-END/

最后在网站管理面板开启SSL,并配置SSL即可。

安装插件

安装debugger

pip install  xeus-python # ==0.8.6

安装matplotlib

pip install ipympl

安装jupyter-kite代码补全

pip install "jupyterlab-kite>=2.0.2"

版权声明:本文为转载文章,版权归 Helo 所有。

本文链接:https://www.ishelo.com/archives/331/

商业转载请联系作者获得授权,非商业转载请注明出处。
Whan

Whan

我不过是一个纯粹的人…
China Beijing