搭建遠程jupyter lab服務器,並在本地瀏覽器以 remote_ip:port 形式連接


如何遠程訪問jupyter

這個其實可以玩的很花,比如用nginx代理,用一個域名來訪問jupyter,但是我這里只做一個基本的遠程登錄,即通過瀏覽器使用 remote_ip: port 來實現遠程訪問

使用screen
sudo apt install screen 

建議jupyter在screen下打開,這樣關閉shell終端后也能繼續運行程序


screen -S jupyter-screen #創建一個screen
screen -r jupyter-screen # 登錄進去
# Ctrl + a +d 離開screen命令
使用 jupyter lab
conda install jupyter-lab

安裝完畢后需要進行一系列設置

設置密碼

不要再傻乎乎的用什么ipython復制粘貼來做,我的天!jupyter早就實現了一鍵修改密碼。

jupyter notebook password # 設置密碼,因為是公網暴露,所以密碼還是復雜點好
其他設置
jupyter notebook --generate-config
# 通常config文件為 ~/.jupyter/jupyter_notebook_config.py
sudo vim  ~/.jupyter/jupyter_notebook_config.py

對該config文件進行編輯:

c.NotebookApp.ip='*' # 允許所有ip訪問
c.NotebookApp.open_browser = False # 不打開瀏覽器
c.NotebookApp.port =8872 #指定端口,不要用默認8888端口!公網上不用默認端口是好文明
c.NotebookApp.allow_remote_access = True #允許遠程機器訪問

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意

請確定你每次要將哪個目錄作為jupyter的工作目錄

比如/home/username/jupyter_project 這個目錄你要自己定

c.NotebookApp.notebook_dir = '/home/username/jupyter_project'

請一定要填寫這個,不然打開jupyter會顯示404

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!注意


后台執行

OK我們已經設置好了jupyter,現在進入screen里面運行

nohup jupyter lab -p 8872 & #后台執行
殺死jupyter:
netstat -nlp | grep 8872 # 查看運行在8872端口的進程id

或者你也可以

ps -a

直接找到jupyter進程的id號

kill -9 <jupyter_id>
開啟服務器端口

如果你在一個服務器上開啟jupyter,可能你需要做防火牆設置

#開放8872端口
sudo firewall-cmd --zone=public --add-port=8872/tcp --permanent
vscode 連接jupyter服務器
  1. 首先安裝jupyter插件,直接搜索安裝即可

  2. 創建一個ipynb文件

  3. 連接jupyter 服務器(右下角)

    image-20211010170242287

輸入http://remote_ipaddress:8872

再輸入密碼

愉快使用vscode進行寫代碼


更新,jupyter lab開機自啟動

參考 :https://bbs.huaweicloud.com/blogs/100595


更新:用systemctl來做自啟動

https://www.jianshu.com/p/93b6a62a8922


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM