阿里云服务器部署Jupyter私房菜

本文涉及的产品
多模态交互后付费免费试用,全链路、全Agent
简介: 在阿里云ECS上,选用2核2G的配置,安装Ubuntu 22.04,然后部署Nginx作为Jupyter Notebook的反向代理。安装Miniconda3,配置清华TUNA镜像源以加速下载。创建Jupyter Notebook,设置密码和远程访问,通过Nginx配置实现安全访问。整个过程包括安装Jupyter,修改Nginx配置,最后通过浏览器访问 Notebook。

一、准备工作

1.准备一台云服务器

我选择的是阿里云ECS,配置:2核2G,SSD40G,3M固定带宽(今年销冠)
aliyun_99.png

服务器的操作系统选用ubuntu 22.04。
ubuntu_env.png

2.安装nginx,用于反向代理jupyter-notebook服务

3.放通jupyter访问端口

image.png

二、安装包管理器及python环境

1. 通过清华TUNA镜像站下载miniconda

从清华源下载miniconda安装脚本

$ wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_23.11.0-2-Linux-x86_64.sh

运行安装miniconda

$ sh  Miniconda3-py39_23.11.0-2-Linux-x86_64.sh

进入conda环境(另外一种方式可以在安装过程中选择conda初始化脚本写入./bashrc文件,只是我没有选择此类方式)

$ eval "$(/home/forrest/miniconda3/bin/conda shell.zsh hook)"

image.png

进入conda环境后,想要退出怎么办?

$(base) conda deactivate

为什么不用anaconda?
庙小装不下(你在开玩笑?),Anaconda包含conda、Python和超过1500个科学包及其依赖项,预装了大量的库,如NumPy, Pandas, Scipy, Matplotlib等,安装包大概在3 GB。从来不点全家桶(啥啥都用,难道不香吗?),起步阶段上手python,没有更多的需求,趟过新手村了,进阶的时候,我们再根据自己使用需求去有选择性地安装想用的工具。

2. 创建配置文件.condarc

配置文件不是默认安装,小伙伴们可以手动安装一下

$ (base) conda config --add channels conda-forge

image.png

3. 将conda源替换成清华源

通过修改/.condarc来使用 TUNA 镜像源,不仅TUNA 提供了 Anaconda 仓库与第三方源,更重要的是速度够快(快不快,谁用谁知道!)

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/

4. 清除索引缓存

确保使用清华源镜像站提供的索引,需要执行清除缓存的动作

(base)$ conda clean -i

三、安装Jupyter-Notebook

1.下载安装jupyter notebook

(base)$ conda install jupyter notebook

2.配置密码

(base)$ python
Python 3.9.18 (main, Sep 11 2023, 13:41:44)
[GCC 11.2.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from jupyter_server.auth import passwd;
>>> passwd() # 输入完两遍密码后,会生成哈希加密字符串,保留备用。
>>> quit() # 退出当前环境

notebook_passwd.png

3.配置nb参数

生成nb配置文件,并通过VIM对配置文件进行修改

(base)$ jupyter notebook --generate-config

进入配置目录并找到配置文件
(base)$ cd ~/.jupyter 

修改配置文件
(base)$ vim jupyter_notebook_config.py

notebook_config.png

注释符号#删除,并重新输入相应参数,并通过:wq进行保存

允许任何来源的请求
c.ServerApp.allow_origin = '*'

允许远程访问
c.ServerApp.allow_remote_access = True

jupyter notebook所在主机IP地址
c.ServerApp.ip = 'localhost'

生成项目文件的保存路径
c.ServerApp.notebook_dir = '/home/forrest/iPython'

本地浏览器打开(关闭)
c.ServerApp.open_browser = False

配置密码时生成的字符串写入进去
c.ServerApp.password = 'hashed_password' 

服务器端本地IP访问端口设置(不是公网地址端口)
c.ServerApp.port = 8888

4. 测试jupyter

(base)$ jupyter notebook

jupyter_notebook_status.png

四、配置Nginx

1.修改/etc/nginx/nginx.conf,添加include /etc/nginx/jupyter.conf

image.png

2.修改jupyter.conf

image.png

3.重新启动nginx服务,并启动jupyter服务

后台运行
(base)$ nohup jupyter notebook --allow-root > jupyter.log 2>&1 &

#切换root用户
(base)$ sudo -i

# 重新启动nginx
$ systemctl restart nginx

ps_jupyter_notebook.png

五、通过浏览器登录jupyter-notebook

test.png

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
存储 测试技术 数据安全/隐私保护
【Docker项目实战】使用Docker部署dufs文件服务器
【Docker项目实战】使用Docker部署dufs文件服务器
425 17
【Docker项目实战】使用Docker部署dufs文件服务器
|
6月前
|
域名解析 人工智能 弹性计算
DeepSeek服务器繁忙解决方法:使用阿里云一键部署DeepSeek个人网站!
通过阿里云一键部署DeepSeek个人网站,解决服务器繁忙问题。学生用户可领取300元代金券实现0成本部署,普通用户则可用99元/年的服务器。教程涵盖从选择套餐、设置密码到获取百炼API-KEY的全流程,助您快速搭建专属大模型主页,体验DeepSeek、Qwen-max、Llama等多款模型,无需代码,最快5分钟完成部署。支持绑定个人域名,共享亲友使用,日均成本仅约1元。
711 10
|
2月前
|
自然语言处理 Unix Linux
解决服务器中Jupyter笔记本的文件名字符编码问题
通过上述步骤,可以有效解决Jupyter笔记本的文件名字符编码问题,确保所有文件能在服务器上正常访问并交互,避免因编码问题引起的混淆和数据丢失。在处理任何编码问题时,务必谨慎并确保备份,因为文件名变更是
104 17
|
2月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
277 13
|
3月前
|
Ubuntu 安全 数据安全/隐私保护
在Docker容器中部署GitLab服务器的步骤(面向Ubuntu 16.04)
现在,你已经成功地在Docker上部署了GitLab。这就是我们在星际中的壮举,轻松如同土豆一样简单!星际旅行结束,靠岸,打开舱门,迎接全新的代码时代。Prepare to code, astronaut!
331 12
|
2月前
|
弹性计算 运维 Linux
3分钟幻兽帕鲁游戏链接服务器一键部署教程,基于阿里云服务器
本教程介绍如何使用阿里云服务器快速部署《幻兽帕鲁》联机服务,支持与好友联机游戏。内容包括服务器配置、计费说明、服务创建及登录游戏步骤,同时提供存档管理与配置修改方法,助您轻松搭建专属游戏服务器。
|
3月前
|
定位技术 数据中心
安徽京准电钟分享:NTP授时服务器极速部署指南
安徽京准电钟分享:NTP授时服务器极速部署指南
234 14
|
4月前
|
人工智能 安全 Shell
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
Jupyter MCP服务器基于模型上下文协议(MCP),实现大型语言模型与Jupyter环境的无缝集成。它通过标准化接口,让AI模型安全访问和操作Jupyter核心组件,如内核、文件系统和终端。本文深入解析其技术架构、功能特性及部署方法。MCP服务器解决了传统AI模型缺乏实时上下文感知的问题,支持代码执行、变量状态获取、文件管理等功能,提升编程效率。同时,严格的权限控制确保了安全性。作为智能化交互工具,Jupyter MCP为动态计算环境与AI模型之间搭建了高效桥梁。
305 2
Jupyter MCP服务器部署实战:AI模型与Python环境无缝集成教程
|
6月前
|
JavaScript 应用服务中间件 nginx
Vue项目部署:如何打包并上传至服务器进行部署?
以上就是Vue项目打包及部署的方法,希望对你有所帮助。描述中可能会有一些小疏漏,但基本流程应该没有问题。记住要根据你的实际情况调整对应的目录路径和服务器IP地址等信息。此外,实际操作时可能会遇到各种问题,解决问题的能力是每一位开发者必备的技能。祝你部署顺利!
1268 17
|
7月前
|
弹性计算 Ubuntu Linux
一键部署OpenWebUI+Ollama到阿里云ECS,轻松运行DeepSeek!(保姆级教程)
在当今数据驱动的时代,快速部署和管理大模型成为企业的关键需求。阿里云提供了一键部署OpenWebUI+Ollama的便捷方案,支持本地大模型运行和管理。用户也可以选择连接阿里云百炼的在线模型。
一键部署OpenWebUI+Ollama到阿里云ECS,轻松运行DeepSeek!(保姆级教程)