• 在linux服务器(ubuntu)上搭建一个在线的jupyter notebook


    0.为自己的用户安装一个anaconda(不需要使用root权限)

    ①下载anaconda3的.sh安装包(下载到待安装目录下)

      annoconda各个版本的链接:https://www.anaconda.com/products/individual

      使用wget命令下载到服务器本地:

    wget -p 指定目录 下载地址

    ②使用bash运行.sh安装文件按照提示即可安装完成

    bash Anaconda3-2020.11-Linux-x86_64.sh

    ③重启linnux系统或者重新连接服务器,再登录上之后命令行前边就会多出一个(base)的环境

     ④后续就可以通过conda的常用命令进行相关操作了

    1.使用conda创建一个新的环境

    conda常用的命令:

    conda list 查看安装了哪些包。
    conda env list 或 conda info -e 查看当前存在哪些虚拟环境
    conda update conda 检查更新当前conda

    创建流程

    ①创建环境

     conda create -n xxx python=3.6

    #xxx为自己命名的虚拟环境名称,该文件可在Anaconda安装目录 envs文件下找到

    ②激活环境

    python --version  # 可以检查当前python的版本
    Linux:  conda activate your_env_name(虚拟环境名称)
    Windows: activate your_env_name(虚拟环境名称)

    ③虚拟环境中安装额外的包

    conda install -n your_env_name [package]

    ④关闭虚拟环境

    Linux: conda deactivate
    ​
    Windows: deactivate

    ⑤删除虚拟环境

    conda remove -n your_env_name(虚拟环境名称) --all
    conda remove --name your_env_name  package_name  # 删除环境中的某个包

    二.搭建在线的jupyter notebook

    ①下载jupyter

    conda install -n 自己的环境名称jupyter

    ②设置密码

    jupyter notebook password

    ③生成配置文件

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

    #非root用户可以不加--allow-root

    #生成完配置文件后修改配置文件(可以先用cat查看文件是否存在)

    以下两个方法都可以修改配置文件,建议使用方法一

    方法一:

    # 修改配置文件 
    # 设置监听地址,一般改为当前主机的ip
    sed -ie "s/#c.NotebookApp.ip = 'localhost'/c.NotebookApp.ip = '服务器ip地址'/g" ~/.jupyter/jupyter_notebook_config.py
    # 设置监听端口
    sed -ie 's/#c.NotebookApp.port = 8888/c.NotebookApp.port = 你想要的端口号/g' ~/.jupyter/jupyter_notebook_config.py
    # 禁用自动打开浏览器
    sed -ie 's/#c.NotebookApp.open_browser = True/c.NotebookApp.open_browser = False/g' ~/.jupyter/jupyter_notebook_config.py

    方法二:

    vim ~/.jupyter/jupyter_notebook_config.py
    
    修改或追加如下配置一致即可,去掉注释符 # 才能读取代码
    
    c.NotebookApp.ip = '建议写当前linux机器的ip地址'
    c.NotebookApp.open_browser = False  #不自动打开浏览器
    c.NotebookApp.port = 8000      #设置端口

    ④启动jupyter notebook
    • # 启动 jupyter notebook
    • #如果当前是root账户使用该命令启动 jupyter notebook --allow-root
    • # 此时打开浏览器,输入 Jupyter服务器的ip:8000 # 进入登陆页面后,输入设置的密码即可登陆

    问题一:

    安装后的jupyter里没有python内核,参考如下博客进行了配置

    https://stackoverflow.com/questions/46771268/cannot-add-python3-kernel-to-jupyter

    可能的原因:

    服务器的python3中可能没有安装 ipykernel.安装ipykernel的方法如下:

    pip3 install ipykernel
    python3 -m ipykernel install --user --name 自己的环境名称

    问题二(已解决):因为没给文件授权

    客户端报错:500 : Internal Server Error

    终端报错:PermissionError: [Errno 13] Permission denied: '/usr/share/jupyter/nbconvert/templates/conf.json'

     猜想:可能和非root的权限有关系

     解决方法:

    ①可能由于某些包与python版本不兼容,进行全部更新操作

    pip install -U "ipython[all]"

    ②权限问题的解决方法:去终端为用户授权(要去jupyter notebook新建的终端里授权)

    sudo chmod -R 777 报无权限错误部分的目录
    #我的是/usr/share/jupyter/nbconvert/templates

    参考:https://stackoverflow.com/questions/36851746/jupyter-notebook-500-internal-server-error

     三、jupyter notebook选择conda环境

    1.安装ipykernel

    conda install ipykernel

    2.使用

    首先激活对应的conda环境

    source activate 环境名称

    将环境写入notebook的kernel中

    python -m ipykernel install --user --name 环境名称 --display-name "Python (环境名称)"

    然后打开notebook

    jupyter notebook

    浏览器打开对应地址,新建python,就会有对应的环境提示了

  • 相关阅读:
    LCA + 二分(倍增)
    Educational Codeforces Round 5
    BNU 51276
    POJ 1511
    hdu2121
    最小树形图(朱刘算法)
    Educational Codeforces Round 1(D. Igor In the Museum) (BFS+离线访问)
    Educational Codeforces Round 1(C. Nearest vectors)
    POJ-2785 4 Values whose Sum is 0(折半枚举 sort + 二分)
    POJ 1661Help Jimmy(逆向DP Or 记忆化搜索 Or 最短路径)
  • 原文地址:https://www.cnblogs.com/StarZhai/p/14488390.html
Copyright © 2020-2023  润新知