LoginSignup
5
7

More than 5 years have passed since last update.

GCP上のDockerでJupyterを使う際に繰り返し使用するコマンドのメモ

Last updated at Posted at 2018-12-29

Google Cloud Platform(以下GCP)やDocker初心者の私ですが、機械学習のために「GCPとDockerでKaggle用計算環境構築 - Qiita」に沿ってがんばって環境構築をしました。

本記事は、環境構築後に「GCP上のDockerでJupyterを使う」際に繰り返し使用するコマンドのメモです。一連の流れに沿って記載しています。
主に自分用ですが、あると便利なコマンド一覧です。

※以下、一通りの環境とCloud SDKは「GCPとDockerでKaggle用計算環境構築 - Qiita」に沿って設定済みとします。

1. GCPのインスタンスを起動

コマンドプロンプト
gcloud compute instances start {インスタンス名}

※インスタンス名を忘れた場合:インスタンスを確認

コマンドプロンプト
gcloud compute instances list

2. インスタンスへ接続

コマンドプロンプト
gcloud compute ssh --zone {ゾーン名} {インスタンス名}

3. Dockerコンテナを起動

GCPインスタンス内
docker start {コンテナ名}

※コンテナ名を忘れた場合:Dockerコンテナ名を確認

GCPインスタンス内
docker ps -a

4. Dockerコンテナにインタラクティブモードで接続

GCPインスタンス内
docker exec -it {コンテナ名} bash

5. Jupyterを起動

Docker内
jupyter notebook --ip=0.0.0.0 --allow-root
コマンドプロンプト
gcloud compute ssh {インスタンス名} -- -N -L 28888:localhost:8888

その後、ブラウザ上でlocalhost:28888へアクセス

※GCPは頻繁に接続が切れるみたいですが、その場合も

コマンドプロンプト
gcloud compute ssh {インスタンス名} -- -N -L 28888:localhost:8888

を実行し直すだけで、ブラウザ上に残っているJupyter Notebookを再接続できます。

6. 使用後のシャットダウン関連

Jupyterをシャットダウン

JupyterサーバでCtrl + c

Dockerコンテナ内からインスタンス内に戻る

Docker内でCtrl + p + q

Dockerコンテナをシャットダウン

GCPインスタンス内
docker stop {コンテナ名}

インスタンスを停止

コマンドプロンプト
gcloud compute instances stop {インスタンス名}

停止しているかどうか確認

コマンドプロンプト
gcloud compute instances list

(おまけ)インスタンスとのファイルのやり取り

  • Jupyter Notebookからファイルをアップロード・ダウンロード可能
  • WebのGCPからインスタンスにssh接続したらsshウィンドウからファイルのアップロード・ダウンロードが可能?

あとがき

コマンドがなかなか覚えられないので、困ったときにはこの記事を片手にGCPとDockerを使おうと思います。

なんとなくではありますが、GCP上でJupyterを使えるようになりました。
しかしこのままではつまづきへの対処など、応用が効きません。
dockerの本を読んで体系的に学んでいく所存です。

その他困りごと

  • ポートのいじり方が分からないので、前に起動したJupyterの関係などで8888ポートが使えなくなった際にはdockerコンテナを一旦停止・再起動しています。

  • Dockerでのマウントの再設定方法が分からなくて困っています(docker runすると新しいコンテナが作成されてしまう?)。

参考

5
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
7