Google Cloud Datalabが起動しないときの対処方法
何が起こったのか
久しぶりにdatalabを使おうとした。
datalab connect (VMインスタンス名)
すると延々と次のメッセージが表示されて一向に接続できない。
Attempting to reconnect...
Waiting for Datalab to be reachable at http://localhost:8081/
datalab@XX.XXX.XXX.XX: Permission denied (publickey).
ERROR: (gcloud.compute.ssh) [/usr/bin/ssh] exited with return code [255].
Connection broken
どうやら立ち上がっていないようだ。
何をやらかしたのか
https://cloud.google.com/datalab/docs/how-to/adding-libraries
に書いてある startup.sh にライブラリを追加する pip コマンドを追加した。
ただし pip ではなく pip3 で!
なぜなら python3 ユーザだから。
どうやって直したのか
コンソールでログインをする。
gcloud compute ssh (VMインスタンス名)
ログインした後、次の2つのファイル
- /mnt/disks/(永続化ディスク名)/content/startup.sh
- /mnt/disks/(永続化ディスク名)/content/datalab/.config/startup.sh
の pip3 部分を削除。作ったばかりなら2つのファイルごと削除しても構わない。
その後 VMインスタンス を再起動した。
結局どうしたか
pip の部分を /usr/local/envs/py3env/bin/pip3 に変えた。
教訓
startup.sh にエラーとなるコマンドを追加すると datalab ごと起動しなくなる。