konchangakita

KPSを一番楽しんでいたブログ 会社の看板を背負いません 転載はご自由にどうぞ

【おてがる開発環境をつくろう】Jupyter Labで Python してみる

機械学習ではド定番というか、大前提?な Jupyter notebook の環境をDocker コンテナ上に Python と一緒に作ってしまいましょう

f:id:konchangakita:20210529152941p:plain:w300

【おてがる開発環境をつくろう】
1.まずは Docker Desktop インストール
2.Docker であそぶ Python 入りのコンテナつくる
3.コンテナで Jupyter Lab 環境 ←今ココ
4.さいきょうのえでぃた VS Code

Jupyter Lab の使いみち

jupyter.org
AI/MLはド定番というか、必須な代物ですが、それ以外の Python コーディングでも有用だと思います

プログラム全体を実行しないで、セルといわれる任意の行単位ごとに実行して即結果を出力できます
プログラム全体を実行しなくてよいので、Python初心者がコードの出力結果を確認できるのが便利、それでいて変数の結果などを使い回せる
 ・REST APIや、DBへのデータ出し入れなど
 ・ちょっとした変更をすぐその場で確認!
 ・最終的には、.py の実行ファイルを作る


Jupyter Lab 入りのコンテナを作る(Python 3.9.4)

Jupyter Lab は Python モジュールとして提供されていて、pip install jupyterlab でインストールできます
jupyterlabモジュール込みのコンテナを作ってみましょう

# Python 3.9.4-slimをベースに
FROM python:3.9.4-slim

# おまじない
RUN apt update -y
RUN pip install -U pip

# Jupyterモジュール
RUN pip install jupyterlab

WORKDIR /home

# デフォルトの jupyterlab 実行コマンド
CMD ["jupyter", "lab", "--ip=0.0.0.0", "--allow-root", "--LabApp.token=''"]
コンテナイメージ作成とコンテナの起動
  • v で指定している ホスト側のマウントポイントは任意に変更しましょう
$ docker build . -t python:3.9.4-jupyter
$ docker run --rm -it -p 1234:8888 -v "D:\work\sample\app:/home/app"   --name python-jupyter python:3.9.4-jupyter



Jupyter Lab にアクセス

コンテナ内で起動している Jupyter Lab へブラウザで接続します
ブラウザからlocalhost:1234」
マウントしたディレクトリを選んで、Notebook を開く!
f:id:konchangakita:20210529154521p:plain

notebook でコマンド結果を確認するだけでなく、いろいろな機能があるようですが、まだそこには手を付けれていない。。。

python 実行してみる

こんな感じで各セルごとに区切って、Pythonコードを実行していくことができます
こんなイメージ
f:id:konchangakita:20210529221728p:plain

通常の Python のコーディングそのままに書いていけば良いです
もちろん、関数やクラスも好きに使えます


さいごに

Python の新しいモジュール導入した時や、一部部分の実行結果を確認するのにすごく重宝しています
REST API の実行とか Web Scraping とか Elasticsearch の連携とか相性がよいので、楽しく開発ができるようになるんじゃないかなぁ