jupyter notebookの入ったDockerComposeとdockerfileとpythonファイルをもらい、dockerで環境構築してみて、という話になるも、jupyternotebookもdockerもpythonも分からず、つまり何も分からず、起動に向けて自分の整理がてらまとめた忘備録です。
docker
dockerはコンテナと呼ばれる仮想環境をホストマシン上に作って、処理させることができる仕組みです。
virtualboxのような従来のハイパーバイザだと、メモリを確保して別OSの空間を作ってやる必要がありましたが、dockerだと別OS不要で動作が軽いです。
また、コンテナはイメージから生成され、イメージはdockerfileからビルド生成します。
このため、dockerfileを誰かと共有することで同じ開発環境を直ちに作ることができるのも利点。
dockerの取り扱いはは別記事でまとめました。dockerが初めての人はまずこちらから。
dockerインストール→hello_worldをdockerで実行させます。
dockerfileはコンテナの環境設定を書いているテキストファイルで、これを基にコンテナイメージを生成し、startでコンテナを起動させる、という動きです。
docker compose
さて、docker composeとは複数のコンテナを同時に操作するためのツール。
docker-compose up
上記コマンドで関係するコンテナが起動する。
このdocker composeファイルにjupyter notebookの記載がある。
jupyter notebookとは、webブラウザ上でpythonを実行するためのツール。
こちらの記事を参考にさせていただき、起動を試みます。
//コンテナを起動、-dオプションをつけることでバッググラウンド動作=ターミナルの継続使用可
$ docker-compose up -d
//statusがupとなり、起動していることを確認する
$ docker-compose ps
//コンテナに入る、コンテナに対してコマンド実行するために必要
//appがコンテナ名、dockercomposeにて定義されている。
//bashがコンテナに入るためのコマンド
$ docker-compose exec app bash
//jupyter notebookを起動
//port番号等はdockercomposeの中身を確認すること
$ jupyter notebook --port=8888 --ip=0.0.0.0 --allow-root --NotebookApp.token=''
下記のような返事があればOK
・
・
・
[I 05:28:49.788 NotebookApp] Serving notebooks from local directory: /app
[I 05:28:49.788 NotebookApp] Jupyter Notebook 6.5.6 is running at:
[I 05:28:49.788 NotebookApp] http://488eb29fbb03:8890/
[I 05:28:49.788 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[W 05:28:49.793 NotebookApp] No web browser found: could not locate runnable browser.
jupyter notebook
jupyter notebookが起動したら、ブラウザでhttp://localhost:8888を入力して表示する。
コメント