基于nginx搭建远程jupyterlab服务
2022/3/6 7:15:26
本文主要是介绍基于nginx搭建远程jupyterlab服务,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
需求
服务器性能比较好,想在服务器方便的跑程序,所以在服务器建立jupyter,然后在本地通过连接访问到jupyter网页,进行操作;
此外想熟悉下nginx,方便后面建网站啥的。
nginx
一款比较流行的后端服务代理程序,关于其介绍不多赘述。
下载安装:
- 官网(http://nginx.org/en/download.html)下载tar包,解压后运行configure,通过make编译安装,可以安装到自己想要的文件地址
- 通过yum安装,比较方便,地址是系统地址,/usr下面
配置,可以在本地选一个文件夹放配置文件,然后通过-c制定配置文件
server { listen 8993; server_name localhost; location / { root /home/xxx/work/nginx/html; index index.html index.htm; } ## 配置部分 client_max_body_size 1G; location /jupyter { proxy_pass http://127.0.0.1:11993; proxy_connect_timeout 3s; proxy_read_timeout 5s; proxy_send_timeout 3s; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_redirect off; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }
参数解析
- listen: 这个参数大家应该都不陌生,就是监听的端口号。
- server_name: 浏览器上输入的域名。
- location: 表示url匹配,/表示全部匹配,还可以配置不同路由。
- root: 表示匹配成功之后进入的目录,可以指定到自己放html的路径。
- index: 表示默认的页面。
- proxy_connect_timeout: nginx向代理服务发起连接,第一次握手等待回应的超时时间。
- proxy_send_timeout: nginx将请求发送给代理服务的超时时间,应该是确认能正常连接之后向代理服务发送真正的业务请求。
- proxy_read_timeout: 代理服务接受到真正业务请求之后,nginx等待代理服务响应具体请求的内容的超时时间。
- client_max_body_size:最大上传文件大小,如果jupyterlab要上传文件,可以配置下,免得有上传限制。
启动服务
nginx -c nginx.conf -e nginx.log
通过-c、-e可以分别指定本地的的配置文件与报错log文件。
jupyer-lab
安装:直接通过pip 安装
配置
jupyter notebook --generate-config # 生产配置文件,通常在home下的.jupyter文件夹里 jupyter-lab password # 输入两次密码,会在配置文件中生存hash密码,然后在登陆界面输入密码解锁 修改/home/xxx/.jupyter/jupyter_xx_x.conf文件 c.NotebookApp.base_url = '/jupyter' # 这个看个人如何选择,因为我在nginx中配置了local是/jupyter,所以需要在这配置baseurl c.NotebookApp.allow_remote_access = True # 允许远程访问 c.NotebookApp.base_url = '/jupyter' # 设置jupyter的资源主页路径,即[jupyter主页] c.NotebookApp.ip = '127.0.0.1' # 设置了访问该jupyter应用的来源机器只能是本机 c.NotebookApp.notebook_dir = '/home/xxx/jupyter' # jupyter工作目录,所有在jupyter创建的文件都会保存到这里 c.NotebookApp.open_browser = False # 禁止启动时自动开启浏览器
运行jupyter,起一个后端进程,注意配置ip为localhost(127.0.0.1)或者0.0.0.0,配置port,和nginx中保持一致
python -m jupyterlab --ip 127.0.0.1 --port 11993 >/dev/null 2>&1 &
效果展示
这篇关于基于nginx搭建远程jupyterlab服务的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-13用Nginx防范DDoS攻击的那些事儿
- 2024-12-13用Terraform在AWS上搭建简单NGINX服务器指南
- 2024-10-29Nginx发布学习:从入门到实践的简单教程
- 2024-10-28Nginx发布:新手入门教程
- 2024-10-21nginx 怎么设置文件上传最大20M限制-icode9专业技术文章分享
- 2024-10-17关闭 nginx的命令是什么?-icode9专业技术文章分享
- 2024-09-17Nginx实用篇:实现负载均衡、限流与动静分离
- 2024-08-21宝塔nginx新增8022端口方法步骤-icode9专业技术文章分享
- 2024-08-21nginx配置,让ws升级为wss访问的方法步骤-icode9专业技术文章分享
- 2024-08-15nginx ws代理配置方法步骤-icode9专业技术文章分享