中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何以Winsows Service方式運行JupyterLab

發布時間:2020-10-17 09:01:45 來源:腳本之家 閱讀:192 作者:Ken.W 欄目:開發技術

有數據分析,數據挖掘,以及機器學習和深度學習實踐經驗的讀者應該會對Jupyter Notebook這一工具十分熟悉,而JupyterLab是它的升級版本,其提供了更具擴展性,更加可定制化的功能選項。

安裝與啟動JupyterLab的方法與Jupyter Notebook一樣簡單。

應用安裝

pip install jupyterlab

應用啟動

jupyter lab

但這樣的操作會帶來一個問題,在以瀏覽器打開JupterLab應用窗口的同時,必須始終保證命令行窗口同樣處于打開狀態。如下圖所示:

如何以Winsows Service方式運行JupyterLab

要想解決這樣的問題,需要將JupyterLab以Windows Service的方式運行。

而Python代碼要在Windows系統里創建Service的話要用到win32serviceutil這個類庫。

類庫安裝

pip install pywin32

服務代碼

將以下代碼保存為jupyterlabservice.py文件,并放在配置目錄之下,如C:\Users\Ken\.jupyter

import inspect
import logging
import os
import win32serviceutil
from jupyterlab.labapp import JupyterApp, LabApp

current_file = os.path.abspath(inspect.getfile(inspect.currentframe()))
os.chdir(os.path.dirname(current_file))


class JupyterLabService(win32serviceutil.ServiceFramework):

  _svc_name_ = "JupyterLab"
  _svc_display_name_ = "Jupyter Lab Service"
  _svc_description_ = "Jupyter Lab Service"

  def __init__(self, args):
    super().__init__(args)
    self.app = LabApp()

  def _init_lab(self):
    JupyterApp.initialize(self.app)
    self.app.init_configurables()
    self.app.init_components()
    self.app.init_webapp()
    self.app.init_terminals()
    self.app.init_server_extensions()
    self.app.init_mime_overrides()
    self.app.init_shutdown_no_activity()

  def SvcDoRun(self):
    self.app.config_dir = "."
    self._init_lab()
    self.app.start()

  def SvcStop(self):
    self.app.stop()

  def SvcShutdown(self):
    self.SvcStop()


if __name__ == '__main__':
  win32serviceutil.HandleCommandLine(JupyterLabService)

服務安裝

python .\jupyterlabservice.py install

服務啟動

python .\jupyterlabservice.py start

訪問localhost:8888網址,可以在瀏覽器中打開JupyterLab應用,但此時會遇到需要token認證的問題,如下圖所示:

如何以Winsows Service方式運行JupyterLab

解決此問題方法是修改配置文件中的token參數。

首先是在配置目錄中找到jupyter_notebook_config.py文件,如果沒有的話可以通過以下命令創建。

jupyter lab --generate-config

然后找到c.NotebookApp.token一項,將其值設為空字符串。

## Token used for authenticating first-time connections to the server.
#
# The token can be read from the file referenced by JUPYTER_TOKEN_FILE or set
# directly with the JUPYTER_TOKEN environment variable.
#
# When no password is enabled, the default is to generate a new, random token.
#
# Setting to an empty string disables authentication altogether, which is NOT
# RECOMMENDED.
c.NotebookApp.token = ''

重啟相應服務后,再次訪問localhost:8888網址,這下就正常了。

如何以Winsows Service方式運行JupyterLab

如果不想使用默認的8888端口,也可以在c.NotebookApp.port選項中將其值改成特定的端口號。

## The port the notebook server will listen on (env: JUPYTER_PORT).
c.NotebookApp.port = 9999

再次重啟服務,這次便可以通過localhost:9999來訪問JuypterLab應用了。

作者:Ken.W
出處:http://www.cnblogs.com/kenwoo

以上就是如何以Winsows Service方式運行JupyterLab的詳細內容,更多關于運行JupyterLab的資料請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

绥芬河市| 邵阳县| 宜兴市| 新田县| 甘谷县| 大足县| 繁昌县| 潞西市| 青冈县| 济源市| 昭觉县| 高密市| 包头市| 姜堰市| 重庆市| 灵武市| 长子县| 嘉鱼县| 天水市| 凉城县| 望都县| 天津市| 鹤庆县| 佛山市| 德安县| 山东| 阳山县| 栖霞市| 昌图县| 广汉市| 永春县| 澄城县| 肥城市| 永德县| 乌拉特后旗| 本溪市| 贵州省| 溧水县| 饶平县| 苏尼特右旗| 资兴市|