課題
DockerコンテナからJupyter Labを起動する際に、自身の嗜好にあったカスタム設定が既に反映されていてほしい。
解決策
- カスタム設定を記述した<plugin_name>.jupyterlab-settingsファイルを生成する。
- Dockerfile内でホストマシン上の<plugin_name>.jupyterlab-settingsのパスをイメージのファイルシステム上のパスにCOPYする。
具体例
-
Monokai++を設定に反映する。
- Monokai++の設定を書き込むファイル名を特定する。
- .jupyterlab-settingsの\を特定する。
- 適当にJupyter Labを起動し、上部メニューからSettings >>> Advanced Settings Editor >>> Themeを選択する。
- System Defaultsの//Themeの下にある// @jupyterlab/apputils-extension:themesのthemesが<plugin_name>にあたる。
- themes.jupyter-lab-settingsを生成する。
-
Dockerfileが存在するパスと同じ場所に、themes.jupyter-lab-settingsというファイルを生成する。
-
themes.jupyter-lab-settingsに以下の内容を書き込む。
{ "theme": "Monokai++" }
-
- Dockerfileを修正する。
-
Dockerfile内のJupyter Labや拡張機能をinstallした後に、以下の内容を書き込む。
# make directory RUN mkdir -p /root/.jupyter/lab/user-settings/@jupyterlab/apputils-extension/ # copy setting files COPY themes.jupyterlab-settings /root/.jupyter/lab/user-settings/@jupyterlab/apputils-extension/
-
- Monokai++の設定を書き込むファイル名を特定する。
-
コード自動整形がファイル保存と同時に行われるよう設定に反映したい。
- コード自動整形の設定を書き込むファイル名を特定する。
- .jupyterlab-settingsの\を特定する。
- 適当にJupyter Labを起動し、上部メニューからSettings >>> Advanced Settings Editor >>> Jupyter Lab Code Formatterを選択する。
- System Defaultsの//Jupyterlab Code Formatterの下にある// @ryantam626/jupyterlab_code_formatter:settingsのsettingsが<plugin_name>にあたる。
- settings.jupyter-lab-settingsを生成する。
-
Dockerfileが存在するパスと同じ場所に、settings.jupyter-lab-settingsというファイルを生成する。
-
settings.jupyter-lab-settingsに以下の内容を書き込む。
{ "formatOnSave": true }
-
- Dockerfileを修正する。
-
Dockerfile内のJupyter Labや拡張機能をinstallした後に、以下の内容を書き込む。
# make directory RUN mkdir -p /root/.jupyter/lab/user-settings/@ryantam626/jupyterlab_code_formatter/ # copy setting files COPY settings.jupyterlab-settings /root/.jupyter/lab/user-settings/@ryantam626/jupyterlab_code_formatter/
-
- コード自動整形の設定を書き込むファイル名を特定する。
-
左括弧を押下すると自動で右括弧で閉じられるよう設定に反映したい。
- 括弧の設定を書き込むファイル名を特定する。
- .jupyterlab-settingsの\を特定する。
- 適当にJupyter Labを起動し、上部メニューからSettings >>> Advanced Settings Editor >>> Notebookを選択する。
- System Defaultsの//Notebookの下にある// @jupyterlab/notebook-extension:trackerのtrackerが<plugin_name>にあたる。
- tracker.jupyter-lab-settingsを生成する。
-
Dockerfileが存在するパスと同じ場所に、tracker.jupyter-lab-settingsというファイルを生成する。
-
tracker.jupyter-lab-settingsに以下の内容を書き込む。
{ "codeCellConfig": { "autoClosingBrackets": true } }
-
- Dockerfileを修正する。
-
Dockerfile内のJupyter Labや拡張機能をinstallした後に、以下の内容を書き込む。
# make directory RUN mkdir -p /root/.jupyter/lab/user-settings/@jupyterlab/notebook-extension/ # copy setting files COPY tracker.jupyterlab-settings /root/.jupyter/lab/user-settings/@jupyterlab/notebook-extension/
-
- 括弧の設定を書き込むファイル名を特定する。