腳本控制Jupyter啓動、中止、重啓

導語

 最近接觸到Jupyter notebook,關於什麼是Jupyter Notebook,這裏引用一段官方的話幫助瞭解一下:
Jupyter Notebook是基於網頁的用於交互計算的應用程序。其可被應用於全過程計算:開發、文檔編寫、運行代碼和展現結果。
 後面轉用Jupyter Lab,對於用戶界面進行了提高,適合多文檔協助工做,並且Lab一樣是可擴展,插件很是豐富,繼承了Jupyter Notebook的優勢。html

思路

 可是在用這兩個的過程當中碰到一些問題,就是當須要控制Jupyter啓動時候,很是麻煩,雖然能夠修改配置,可是總要手動輸入命令啓動服務,而一些日誌信息,進程信息獲取一樣也十分不方便。
具體有兩種作法:git

  1. 第一種就是使用Jupypter的Docker鏡像,啓動容器
  2. 第二種經過Shell腳本控制Jupyter的啓動,中止,重啓等操做;

 關於第一種作法,其實很簡單就是下載鏡像,監控docker服務,第二種是以前寫過這類服務的啓動腳本,這裏就改一下便可,第二種本篇主要講的。github

配置

首先須要添加配置文件,若是生成過配置文件進入配置目錄:docker

jupyter notebook --generate-config

配置目錄:markdown

腳本控制Jupyter啓動、中止、重啓

jupyter.sh腳本控制服務,jupyter.pid記錄服務運行進程PID,jupyter.log記錄服務的前臺輸出的日誌;ide

代碼

經過PID文件中記錄的PID號,檢查服務進程是否正常運行:插件

腳本控制Jupyter啓動、中止、重啓

啓動服務,判斷服務進程是否在後臺中正常運行,若是有則忽略返回正在運行,若是沒有則經過nohup將服務進程掛在後臺中啓動運行;日誌

腳本控制Jupyter啓動、中止、重啓

中止服務,判斷服務進程後臺運行狀況,而後根據PID,殺掉後臺進程code

腳本控制Jupyter啓動、中止、重啓

檢查狀態,檢查後臺進程服務,輸出PID信息htm

腳本控制Jupyter啓動、中止、重啓

最後根據腳本傳入的第一個參數判斷須要的操做:

腳本控制Jupyter啓動、中止、重啓

整體來講,腳本很簡單,若是須要一些其餘的功能,能夠再這種基礎上開發,有興趣的同窗能夠在個人github地址上獲取:
https://github.com/libuliduobuqiuqiu/Jupyter_Control

參考連接:
https://www.jianshu.com/p/91365f343585
https://jupyterlab.readthedocs.io/en/stable/getting_started/overview.html

相關文章
相關標籤/搜索