远程工作利器:高效指南教你如何在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…

redis常用数据结构及命令

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

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

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

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

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

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

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

sprongboot+vue 游泳馆管理系统

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

地图下钻,双击返回上一级

介绍&#xff1a; 看了好多地图下钻的案例&#xff0c;要么json文件不全胡&#xff0c;要么返回功能不全胡&#xff0c;有的返回是直接写死&#xff0c;返回到首页&#xff0c;我这个小案例是使用地理小工具的数据&#xff0c;本案例可以逐步一级一级的返回&#xff0c;地图的其…

【旧文更新】【优秀课设】基于FPGA的Verilog HDL自动售货机

【旧文更新】基于FPGA的Verilog HDL自动售货机 文章目录 关于旧文新发FPGACortex-M架构SysTick系统定时器阻塞和非阻塞延时 附录&#xff1a;压缩字符串、大小端格式转换压缩字符串浮点数压缩Packed-ASCII字符串 大小端转换什么是大端和小端数据传输中的大小端总结大小端转换函…

Three.js 中的场景与相机基础

Three.js 中的场景与相机基础 一、场景&#xff08;Scene&#xff09; 在 Three.js 中&#xff0c;场景是所有 3D 对象存在和交互的容器。艾斯视觉作为行业ui设计与前端开发服务商很高兴能在这里与你共同探讨&#xff1a;它就像是一个虚拟的 3D 空间&#xff0c;我们可以在其中…

端午节趣味互动小游戏的作用是什么

端午节吃粽子&#xff0c;多数行业商家都可借势进行品牌营销&#xff0c;而一场营销效果的优劣&#xff0c;除了好方案外&#xff0c;还需要好的工具/渠道及运营等&#xff0c;围绕粽子元素的互动小游戏是营销互动的主要形式之一。 运用【雨科】平台拥有多款端午节粽子主题互动…

leetcode 1270 向公司CEO汇报工作的所有人(postgresql)

需求 员工表&#xff1a;Employees ---------------------- | Column Name | Type | ---------------------- | employee_id | int | | employee_name | varchar | | manager_id | int | ---------------------- employee_id 是这个表的主键。 这个表中每一行中&#xff0c;e…