Dockerでデータサイエンス向けJupyter Notebookを簡単セットアップ

Docker

データ分析や機械学習で大活躍のJupyter Notebookを、Dockerを使って手軽に始める方法を紹介します。
この記事では、データサイエンス用に最適化されたイメージを利用し、データの永続化も考慮したセットアップ手順を解説します。

必要なもの

  1. Docker Desktop:インストールされている必要があります。
  2. Docker Compose:Docker Desktopに同梱されています。

手順

ステップ1: Composeファイルを作成する

以下の内容をコピーして、新しいファイルを作成し、docker-compose.ymlという名前で保存してください。

ファイルの説明

  • image: データサイエンス向けのJupyter Notebookイメージを指定しています。
  • ports: ホストのポート10000をコンテナの8888に割り当てます。ブラウザからhttp://localhost:10000でアクセスできます。
  • volumes./jupyter_dataディレクトリをコンテナ内の作業フォルダにマウントします。
    これにより、Notebookファイルが永続的に保存されます。
  • restart: unless-stopped: コンテナを常に再起動します(停止するまで)。

ステップ2: ディレクトリを作成する

ローカルに必要なフォルダを作成します。

  • my_jupyter_project: プロジェクト全体を管理するフォルダです。
  • jupyter_data: Jupyter Notebookのデータを保存するフォルダです。

ステップ3: Jupyter Notebookを起動する

ターミナルでdocker-compose.ymlが保存されているフォルダに移動し、以下のコマンドを実行します。

コマンドの説明

  • up -d: サービスをバックグラウンドで起動します。
  • 初回起動時は、Dockerがイメージをダウンロードするので時間がかかる場合があります。

ステップ4: ブラウザでアクセスする

ブラウザで以下のURLにアクセスします。

起動時に以下の画面が表示されます。

以下の手順でトークンを取得して入力してください。

Jupyter Notebookの停止方法

Jupyter Notebookを停止したい場合は、以下のコマンドを実行します。

よくある質問

Q. Jupyter Notebookのデータはどこに保存されますか?

A. ローカルのjupyter_dataフォルダに保存されます。
このフォルダは永続化されているため、コンテナを削除してもデータが失われません。

Q. 使用するポート番号を変更できますか?

A. Composeファイルのportsセクションでホストのポート番号(例:10000)を好きな番号に変更してください。

Q. トークンの入力を回避するには?

A. docker-compose.ymlを以下に変更します

Dockerコンテナで書き込み時にパーミッションエラー

Dockerコンテナのworkディレクトリの所有者がrootでrootのみ読み書き可能な権限であるためパーミッションエラーが発生します。

Dockerコンテナで、workのパーミッションを変更します。

まとめ

これでDockerを使ったJupyter Notebookのセットアップが完了です!データサイエンス向けのツールがすぐに使える環境が整います。
プロジェクトごとにデータを整理し、効率的に分析を進めていきましょう。

この記事を参考に、ぜひJupyter Notebookを活用してみてください!

タイトルとURLをコピーしました