2023-01-03
前回の続きです。
Google Colaboratoryは自分で環境構築不要でお手軽だが、速い自分のマシンで動かしたいならすべての環境は自分で構築する必要がある。
pipが有効になりTersorFlowを入れることができたので、続いてJupyter Notebookを入れて、外部から接続してみます。
Jupyter Notebookはブラウザ上でPythonコードを1行ずつ確認しながら実行できるデーモンプログラム。GoogleのColab Notebookに相当するもの。
通常、インストールは一般ユーザーで行う。
pip3 install jupyter
$HOME/.local/binにjupyterコマンドがインストールされるので、.bash_aliases等のログインスクリプトにパスを通しておく。
if [ -d $HOME/.local ]; then export PATH=$HOME/.local/bin:$PATH fi
jupyterを起動したディレクトリに以降データファイルやディレクトリが作られると思われるので、場所を考えて起動する。今回はホームディレクトリトップで起動。
cd jupyter notebook [I 16:44:35.047 NotebookApp] ノートブックサーバは cookie secret を /home/hogeuser/.local/share/jupyter/runtime/notebook_cookie_secret に書き込みます [I 16:44:35.198 NotebookApp] ローカルディレクトリからノートブックをサーブ: /home/hogeuser/.local/bin [I 16:44:35.199 NotebookApp] Jupyter Notebook 6.1.6 is running at: [I 16:44:35.199 NotebookApp] http://localhost:8888/?token=0e9729fcbb3596271f1cf08e3cc901685e97a9fd0fff00d9 [I 16:44:35.199 NotebookApp] or http://127.0.0.1:8888/?token=0e9729fcbb3596271f1cf08e3cc901685e97a9fd0fff00d9 [I 16:44:35.199 NotebookApp] サーバを停止し全てのカーネルをシャットダウンするには Control-C を使って下さい(確認をスキップするには2回)。 [W 16:44:35.201 NotebookApp] ウェブブラウザが見つかりません: could not locate runnable browser
ここはAWSのDebian仮想マシンであるので、ブラウザは無いと言われるが、ローカルホストの8888番にて確かにNotebookデーモンが立ち上がる。
あとはこの8888番に外から接続すればよい。Notebook環境を外に公開することはまず無いため、SSHで接続しポートフォワードによりアクセスする。
外の自分のWindowsマシンからポートフォワードでAWS仮想マシンに接続するには
社内のGitリポジトリに社外のAndroid StudioからSSHポートフォワードでClone/Pushする
と同様の方法を取る。このAWSマシンのIPアドレスが100.111.122.144であるとすると、
PortForwarderのconfig.txtにて
Host 100.111.122.144 HostName 100.111.122.144 Port 22 # hostname or IP address User hogeuser # username on server. NEEDED LocalForward 127.0.0.1:8888 127.0.0.1:8888 Compression yes # if you need compression
などとローカル8888→ローカル8888に設定し、id_rsaファイルにAWSマシンの秘密鍵を貼り付け、PortForwarder起動、Windowsのファイアウォールメッセージはハイで許可する。
つながったらNotebookAppのメッセージ通り、Windowsブラウザーで
http://127.0.0.1:8888/?token=0e9729fcbb3596271f1cf08e3cc901685e97a9fd0fff00d9
と叩いて、Jupyter Notebookトップページが出れば成功。
※本記事内容の無断転載を禁じます。
ご連絡は以下アドレスまでお願いします★
さくらインターネットでPython MecabをCGIから使う
さくらインターネットのPHPでAnalytics-G4 APIを使う
インクルードパスの調べ方
【Git】特定ファイルを除外する.gitignore
【Ubuntu/Debian】NVIDIA関係のドライバを自動アップデートさせない
【Python】Spacyを使用して文章から出発地と目的地を抜き出す
HomeBrewでApache2を入れて自動起動つきで動かしPHPモジュールと連携する
macOSに標準付属のApacheを自動起動つきで動かす
HomeBrewでPostgreSQLを入れて自動起動つきで動かす
【Windows10】リモートデスクトップ間のコピー&ペーストができなくなった場合の対処法
【C/C++】小数点以下の切り捨て・切り上げ・四捨五入
Windows版Google Driveが使用中と言われアンインストールできない場合
【Apache】サーバーに同時接続可能なクライアント数を調整する
Windows11+WSL2でUbuntuを使う【2】ブリッジ接続+固定IPの設定
【Linux】iconv/libiconvをソースコードからインストール
Googleファミリーリンクで子供の端末の現在地がエラーで取得できない場合
【ウマ娘】デイリーレースに雨の状態で出走するには
最新版のOpenSSH Serverにしたら公開鍵ログインできなくなった場合