远程工作利器:高效指南教你如何在Linux服务器上部署Jupyter Notebook并实现安全远程访问

远程工作利器:高效指南教你如何在Linux服务器上部署Jupyter Notebook并实现安全远程访问

1.安装 Anaconda和python

你可以在终端中运行以下命令来检查是否已安装:

python --version
python3 --version
  • 安装 pip

    pip 是 Python 的包管理工具,用于安装和管理 Python 库。在终端中运行以下命令来安装 pip:

    sudo yum install python3-pip
    
  • Anaconda安装

    这里就不赘述了直接参考下述链接:

    Linux和Windows系统下:安装Anaconda、Paddle、tensorflow、pytorch,GPU[cuda12.4、cudnn]、CPU安装教学,多版本cuda11.2 自由切换

    #1.创建指定python版本的环境
    conda create --name your-env python=3.11
    #2. 激活环境
    conda activate your-env
    #3.退出环境
    conda deactivate
    

2.安装 Jupyter

  1. 使用 pip 安装 Jupyter。运行以下命令:

    # 更新pip3到最新版本
    pip3 install --upgrade pip
    # pip安装jupyter notebook
    pip3 install jupyter
    
  2. 把 jupyter 添加到环境变量。

    # 显示jupyter所在目录
    ~ pip3 show jupyter
    Location: /usr/local/lib/python3.6/site-packages
    

    a. 查找 Jupyter 的安装位置:
    查找 Jupyter 可执行文件的安装位置。你可以使用以下命令找到:

    find / -name jupyter
    

    上述命令可能需要一些时间,因为它会搜索整个文件系统。找到类似/xxx/xxxl/bin/jupyter的路径。

    在这里插入图片描述

    b. 将 Jupyter 路径添加到 PATH:
    打开你的 bash 配置文件,通常是~/.bashrc~/.bash_profile。使用文本编辑器打开该文件:

    vim ~/.bashrc
    或者
    nano ~/.bash_profile
    

    c. 在文件的末尾添加以下行(将xxx/xxxx/bin替换为上面找到的 Jupyter 可执行文件的路径)

    export PATH="/www/anaconda3/anaconda3/envs/agent/bin:$PATH"
    

    保存并退出文本编辑器。

    d. 使更改生效:

    source ~/.bashrc
    

    或者

    source ~/.bash_profile
    

3.启动 Jupyter Notebook

3.1. 生成配置文件

jupyter notebook --generate-config

会生成一个jupyter_notebook_config.py文件。

一般生成在root/.jupyter/下面

3.2. 创建密码

jupyter notebook password

输入两次密码,然后他会自动帮你把生成含有密码的 hash 码输入到jupyter_notebook_config.json文件。

随便设置简单即可 123456789

3.3. 修改 jupyter notebook 的配置文件

  • 打开配置文件

    vim jupyter/jupyter_notebook_config.py
    
  • 在该文件中做如下修改或直接在文件尾端添加:

    c.NotebookApp.allow_remote_access = True #是否允许远程访问,默认False
    c.NotebookApp.allow_root = True #是否同意jupyter以root身份运行,默认False
    c.NotebookApp.ip = '0.0.0.0' #允许所有ip访问
    c.NotebookApp.notebook_dir = '/www/algorithm/agent' #自定义工作区,目录要自己预先创建。
    c.NotebookApp.open_browser = False #是否在键入jupyter时打开浏览器
    c.NotebookApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=xxxxxxxxxxxxx' #jupyter server密码,从jupyter_notebook_config.json 复制出来。
    c.NotebookApp.port = 8502 #jupyter的监听端口,默认8888

自定义工作区 :推荐放在ipynb所有目录一致

3.4. 启动 jupyter notebook

jupyter notebook
#jupyter notebook --ip=0.0.0.0 --port=8888
# 或使用nohup后台运行
nohup jupyter notebook &

3.5. 远程访问 jupyter notebook

浏览器输入http://ip:8502, 会让你输入密码,密码即为你上面设置的。

在这里插入图片描述

本文由 简悦 SimpRead 转码, 原文地址 blog.csdn.net

4.Jupyter 好用的扩展插件

  • 1、安装 jupyter_contrib_nbextensions
    该插件会扩展 jupyter 的很多功能,如目录,自动补全等,在服务器终端依次运行如下命令

    pip install jupyter_contrib_nbextensionsjupyter-contrib-nbextension install --user
    

    打开 jupyter 会发现多了一个菜单栏 Nbextension

    对 Nbextension 进行配置,勾选需要的功能

  • 2、安装 nb_conda

    conda install nb_conda
    

    安装完成后,需要在服务器重新启动一下 Jupyter notebook,会发现多了一个菜单栏 Conda

    在服务器创建一个虚拟环境 python312,然后刷新一下页面,就可以看到虚拟环境 python312

    conda create -n python312 python=3.12
    

5. 多个 Python 版本 kernel 配置

虽然上面已经创建了虚拟环境,并显示出来了,但是在创建新的 notebook 时并显示 python312,因为 python312 存在不同的虚拟环境里面,这个需要我们再进行配置

Jupyter Notebook 允许用户在同一个 notebook 中使用多个不同的 IPython 内核

  • 1、安装 Jupyter Notebook 和 IPython 内核

    conda create -n python312 python=3.12   #上面安装过的可以忽略
    conda activate python312
    pip install jupyter
    pip install ipykernel
    pip install ipywidgets
    
  • 2、安装新的 kernel 内核

    conda activate python312   #切换虚拟环境
    ipython kernel install --name "python312" --user
    
  • 3、服务器端重新启动 Jupyter notebook
    建一个 python312 内核的 notebook,查看当前内核的 python 解释器版本
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/18939.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

长方形边框 上方中间有缺口 css

<div class"text_6">大234234师掌4234柜</div><div class"text-wrapper_1"><span class"paragraph_1">四川慧创云戈科技有限公司推出的“大师掌柜”&#xff0c;是一个以餐饮外卖为切入口&#xff0c;专注实体小店新零售…

一款即支持3v3单片机又支持5v单片机的485收发芯片

原理图参考 H7-TOOL 特此记录 anlog 2024年5月21日

蓝桥杯嵌入式 第六届国赛 更新中……

题目 配置 注意事项 复制LCD的工程&#xff0c;先配置资源 --- 勾选完选项一定要再看一眼&#xff0c;可能选择错误 ADC&#xff1a;配置ADC2_IN15&#xff0c;对应PB15引脚 EEROM&#xff0c;配置PB6和PB7 按键 输入模式PB0、PB1、PB2、PA0 LED 一定要使能PD2 PWM互补输出&…

jquery---ajax方法示例

ajax方法 $.ajax({name:value, name:value, ... }) ajax方法有一个参数&#xff0c;一定长度的对象&#xff0c;内部指定了ajax的请求地址和格式&#xff0c;方式等等&#xff0c;它可以有以下的属性和值 示例 这里展示了一个简单的get请求图片url的实例 let data; let url…

【Spring】认识 Spring AOP

认识 Spring AOP 1.什么是 AOP2.AOP 中的概念3.用 AOP 方式管理日志3.1 编写 AOP 日志注解类3.2 编写控制器用于测试 1.什么是 AOP AOP&#xff08;Aspect Oriented Program&#xff0c;面向切面编程&#xff09;把业务功能分为核心、非核心两部分。 核心业务功能&#xff1a…

ssm校园疫情防控管理系统-计算机毕业设计源码30796

目 录 摘要 1 绪论 1.1目的及意义 1.2开发现状 1.3ssm框架介绍 1.3论文结构与章节安排 2 校园疫情防控管理系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1 数据流程 3.3.2 业务流程 2.3 系统功能分析 2.3.1 功能性分析 2.3.2 非功能性分析 2.4 系统用例分…

真实测评:9款电脑加密软件最新排名

2024年已经过半&#xff0c;电脑加密软件市场发生了很多变化&#xff0c;根据资料汇总&#xff0c;一些电脑加密软件排名也发生了变化&#xff0c;下面是最近的排名。 1、安企神&#xff1a; 可以试试7天的免费试用&#xff0c;用过之后就回不去了 试用版https://work.weix…

【数据分析面试】56.数据格式转换(Python:melt函数)

题目 给定一个df&#xff0c;包含ABCDE多个列。请编写一个 Python 程序&#xff0c;将列 ‘D’ 和 ‘E’ 转换为长格式&#xff0c;并使用 ‘A’、‘B’ 和 ‘C’ 作为标识符。 换句话说&#xff0c;将数据中的D、E两列转换为行&#xff0c;使数据从宽变长。 示例&#xff1…

The First项目报告:一场由社区驱动的去中心化加密冒险—Turbo

2023年3月14日&#xff0c;由OpenAI公司开发自回归语言模型GPT-4发布上线&#xff0c;一时之间引发AI智能领域的轩然大波&#xff0c;同时受到影响的还有加密行业&#xff0c;一众AI代币纷纷出现大幅度拉升。与此同时&#xff0c;一款名为Turbo的Meme代币出现在市场中&#xff…

AI大模型探索之路-实战篇10:数据预处理的艺术:构建Agent智能数据分析平台的基础

系列篇章&#x1f4a5; AI大模型探索之路-实战篇4&#xff1a;深入DB-GPT数据应用开发框架调研 AI大模型探索之路-实战篇5&#xff1a;探索Open Interpreter开放代码解释器调研 AI大模型探索之路-实战篇6&#xff1a;掌握Function Calling的详细流程 AI大模型探索之路-实战篇7…

vscode plantuml插件安装使用(windows)

1、安装JDK&#xff0c;网址 https://www.oracle.com/java/technologies/&#xff0c;添加系统变量JAVA_HOME 2、安装graphviz&#xff0c;网址 Download | Graphviz&#xff0c; 并添加用户变量GRAPHVIZ_DOT 3、vscode安装插件plantuml 4、新增wsd文件&#xff0c;按照使用…

redis常用数据结构及命令

Redis数据结构简介 Redis可以存储键与5种不同数据结构类型之间的映射&#xff0c;这五种数据结构分别为String(字符串)、List&#xff08;列表&#xff09;、Set&#xff08;集合&#xff09;、Hash&#xff08;散列&#xff09;、和Zset&#xff08;有序集合&#xff09;。 …

JavaScript 模板字符串

JavaScript 模板字符串是一种允许在字符串中嵌入表达式的特殊字符串语法。它们以反引号&#xff08;&#xff09;包围&#xff0c;并使用${}符号来表示需要插入的表达式。 模板字符串可以包含任何有效的 JavaScript 表达式&#xff0c;包括变量、函数调用、算术运算等。在插入…

电流继电器DL-13 柜内安装带板前接线附件 JOSEF约瑟

DL-10系列电流继电器板前接线为电磁式瞬动过电流继电器&#xff0c;它广泛用于电力系统二次回路继电保护装置线路中&#xff0c;作为过电流启动元件。 系列型号 DL-11电流继电器; DL-12电流继电器; DL-13电流继电器&#xff1b; 一、应用范围 DL-13/2电流继电器 板前接线为…

怎么藏族翻译中文在线翻译?更好地了解藏族文化

怎么藏族翻译中文在线翻译&#xff1f;着全球化的发展&#xff0c;语言交流的重要性日益凸显。藏族&#xff0c;作为中国的一个古老而神秘的民族&#xff0c;其语言对于很多人来说充满了神秘感。然而&#xff0c;在今天的数字化时代&#xff0c;我们有了更多的工具来打破语言壁…

主机探测和端口扫描的流量隐藏问题

Nmap 确认Nmap版本&#xff1a;Nmap版本必须在7.70以上&#xff0c;否则可能没有这个功能&#xff1b; –data-length 选项用于向扫描数据包中添加额外的空数据。 –data-offset 选项用于在数据包中插入空白数据区&#xff0c;以设置数据偏移量。 例&#xff1a; nmap --d…

mp4文件损坏怎么修复?三种修复办法分享!

对于我们平时使用到的MP4视频文件&#xff0c;有时候在播放时会遇到文件损坏&#xff0c;无法正常打开&#xff0c;针对这个问题&#xff0c;如何修复损坏的MP4视频文件&#xff1f; 首先&#xff0c;我们需要了解MP4文件损坏的可能原因。常见的原因包括&#xff1a;逻辑损坏、…

转行公务员--省考面试87+,我是如何做到的

文章目录 本人经历了两年省考。第一年第二年 一、破模版二、别让金句成为你的负担三、别背四、写逐字稿五、多练六、多参加考试 本人经历了两年省考。 第一年 面试80出头&#xff0c;翻了3个人&#xff0c;无奈笔试太拉胯&#xff0c;最后差0.6分惜败。 第二年 在笔试备考期…

c语言指针加法

在C语言中&#xff0c;指针加法涉及到指针运算&#xff0c;其中加法的结果取决于指向的数据类型的大小。下面逐一解释这三个表达式&#xff1a; (void *)p 1; 在C标准中&#xff0c;对void*指针进行算术运算是未定义的&#xff0c;void*是一种特殊的指针类型&#xff0c;代表“…

sprongboot+vue 游泳馆管理系统

游泳馆管理系统 spring bootvue 主要有游泳课程预约、网上购票、教练预约、游泳器材管理、会员管理等功能&#xff1b; 1、管理员 登录、修改密码 购票管理&#xff1a;查看订单、删除订单、修改订单 教练管理&#xff1a;教练信息查询、修改 课程信息&#xff1a;增删改查课程…