Jupyter ノートブックは、主に Python コードの記述、より具体的にはディープラーニング開発のために、Docker コンテナの下に構成されています。 Jupyter Web を最も効率的に使用する方法は、クラウド上にデプロイすることです。CPU クラウド サーバーでも GPU クラウド サーバーでも、すぐに起動して使用できます。 docker の登場により、導入と使用がはるかに便利になりました。 - DockerをインストールするDockerにはDocker CEとDocker EEがあり、一般的にはDocker CE(コミュニティ版)が使われます。 Docker は、Linux (Ubuntu、CentOS)、MacOS、Windows、または Raspberry Pi にインストールできます。一般的には Linux で使用されますが、個人的には Ubuntu システムが好きです。それでは、ubutnu で docker をインストールする方法を紹介しましょう。 まず、マシン上に存在する可能性のある古いバージョンを削除します。 $ sudo apt-get 削除 docker docker-engine docker.io オプションのカーネルモジュールのインストールカーネル パッケージのインストール サイズを削減するために、Ubuntu 14.04 以降では、一部のカーネル モジュールがオプションのカーネル モジュール パッケージ (linux-image-extra-*) に移動されました。通常インストールされたシステムにはオプションのカーネル モジュール パッケージが含まれますが、一部のトリミングされたシステムでは省略されている場合があります。 AUFS カーネル ドライバーは、オプションのカーネル モジュールの一部です。推奨される Docker ストレージ レイヤー ドライバーとして、AUFS を使用するには、通常、オプションのカーネル モジュール パッケージをインストールすることをお勧めします。 $ sudo apt-getアップデート $ sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual Ubuntu 16.04 以降の Docker CE では、デフォルトで overlay2 ストレージ レイヤー ドライバーが使用されるため、手動での構成は必要ありません。 証明書と鍵の準備apt ソースは HTTPS を使用して、ダウンロード プロセス中にソフトウェアが改ざんされないようにします。したがって、まず、HTTPS を使用して転送するパッケージを CA 証明書とともに追加する必要があります。 $ sudo apt-getアップデート $ sudo apt-get install apt-transport-https ca-certificates curl software-properties-common 国内ネットワークの問題により、国内ソースの使用を強くお勧めします。コメントの公式ソースを参照してください。 $ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key を追加 - # 公式ソース# $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 最後に、Docker ソフトウェア ソースを追加します。 $ sudo aptリポジトリを追加\ "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) \ 安定した" # 公式ソース# $ sudo add-apt-repository \ # "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ # $(lsb_release -cs) \ # 安定した 上記のコマンドは、Docker CE APT ミラー ソースの安定バージョンを追加します。Docker CE のテスト バージョンまたはデイリー ビルド バージョンが必要な場合は、stable を test または nightly に変更してください。 Docker CEをインストールする$ sudo apt-getアップデート $ sudo apt-get install docker-ce Docker CEを起動する$ sudo systemctl dockerを有効にする $ sudo systemctl dockerを起動します Ubuntu 14.04 の場合は、次のコマンドを使用して起動します。 $ sudo サービス docker を開始 Dockerユーザーグループを作成するセキュリティ上の理由から、通常、Linux システムでは root ユーザーは直接使用されません。したがって、より良い方法は、docker を使用する必要があるユーザーを docker ユーザー グループに追加することです。 $ sudo グループ追加 docker $ sudo usermod -aG docker $USER Dockerが正しくインストールされているかどうかをテストする$ docker run hello-world テスト用にhello-worldイメージをプルします。 ローカルでイメージ 'hello-world:latest' が見つかりません 最新: library/hello-world から取得 d1725b59e92d: プル完了 ダイジェスト: sha256:0add3ace90ecb4adbf7777e9aacf18357296e799f81cabc9fde470971e499788 ステータス: hello-world:latest の新しいイメージをダウンロードしました Dockerからこんにちは! このメッセージは、インストールが正常に動作していることを示しています。 このメッセージを生成するために、Docker は次の手順を実行します。 1. Docker クライアントが Docker デーモンに接続しました。 2. Docker デーモンは Docker Hub から「hello-world」イメージを取得しました。 (amd64) 3. Dockerデーモンは、そのイメージから新しいコンテナを作成し、 現在読んでいる出力を生成する実行可能ファイル。 4. Dockerデーモンはその出力をDockerクライアントにストリーミングし、Dockerクライアントはそれを 端末に。 もっと野心的なことに挑戦するには、次のコマンドで Ubuntu コンテナを実行できます。 $ docker run -it ubuntu bash 無料の Docker ID を使用して、イメージを共有したり、ワークフローを自動化したりすることができます。 参考: その他の例やアイデアについては、以下をご覧ください。 詳しくはこちら 上記の情報が正常に出力されればインストールは成功です。 画像アクセラレータ中国の Docker Hub からイメージをプルすることが難しい場合があります。この場合、イメージ アクセラレータを構成できます。 Dockerは公式に提供しており、Alibaba Cloud、Qiniu Cloudなど多くの国内クラウドサービスプロバイダーが国内アクセラレータサービスを提供しています。 Ubuntu 14.04 システム: /etc/default/docker を編集し、DOCKER_OPTS でアクセラレータ アドレスを設定します。 DOCKER_OPTS="--registry-mirror=https://registry.docker-cn.com" 次に、サービスを再起動します。 $ sudo サービス docker を再起動します Ubuntu 16.04以降: /etc/docker/daemon.json に次の内容を記述してください (ファイルが存在しない場合は、新しいファイルを作成してください)。 { 「レジストリミラー」: [ 「https://registry.docker-cn.com」 ] } 次に、サービスを再起動します。 $ sudo systemctlデーモンリロード $ sudo systemctl dockerを再起動します アクセラレータが効果的かどうかを確認するコマンドラインで docker info コマンドを実行します。次の出力が表示されれば、構成は成功です。 レジストリミラー: レジストリ - 一般的なDockerコマンドまず、docker コマンドを使用する前に、イメージとコンテナの概念を区別する必要があります。推奨参考リンク 同じイメージで複数の Docker コンテナを起動します。これらのコンテナは起動後、アクティブになり、互いに分離されます。コンテナを操作した後、既存のシステム環境を維持したい場合は、送信して保存する必要があります。 開始コマンド: docker run たとえば、次のコマンドは「Hello World」を出力し、コンテナを終了します。 $ docker run ubuntu:18.04 /bin/echo 'Hello world' こんにちは世界 これは、ローカルで /bin/echo 'hello world' を実行するのとほとんど区別がつきません。 次のコマンドは、bash ターミナルを起動し、ユーザーの操作を可能にします。 $ docker run -it ubuntu:16.04 /bin/bash ルート@af8bae53bdd3:/# -i オプションはコンテナの標準入力を開いたままにし、 -t オプションは Docker が疑似端末 (疑似 tty) を割り当ててコンテナの標準入力にバインドできるようにします。 コンテナのステータスには主に次のものが含まれます。created: 作成済み (docker ps -a コマンドを使用して一覧表示できます) ですが、まだ起動されていません (docker ps コマンドを使用して一覧表示できません) ランニング:ランニング 一時停止: コンテナプロセスが一時停止しています 再起動中: コンテナプロセスは再起動中です exited: 上の図の停止状態は、コンテナが以前は実行されていたが、現在は停止していることを意味します (まだ実行されていない新しく作成されたコンテナを指す作成状態とは区別されます)。 start コマンドを使用して実行状態に戻すことができます。 破棄: コンテナは削除され、存在しなくなりました 現在のシステムによってプルされたイメージを表示します。 $docker イメージ 現在のシステムで開始された(アップ状態)コンテナをすべて表示する $ dockerコンテナls または $ docker ps 現在のシステム内のすべてのコンテナを表示 $ dockerコンテナls -a または $ docker ps -a コンテナを終了するには: $ docker コンテナ停止 (ID または名前) または、exit コマンドまたは Ctrl+d を使用してターミナルを終了し、コンテナを停止します。 コンテナを入力します: $docker アタッチ (ID または名前) または $docker exec (ID または名前) $docker attach はこの stdin から終了し、コンテナが停止します。 $docker exec はこの stdin から終了しますが、コンテナは停止しません。 $docker execを使用することをお勧めします コンテナを削除します: $docker container rm (id または name) 終了状態にあるすべてのコンテナをクリーンアップします $ docker container prune - Jupyterをインストールするまずコンテナに入ります: $ docker run -i -t ubuntu:16.04 /bin/bash このプロセスは基本的に Ubuntu システムに Jupyter をインストールするのと同じですが、コンテナ内の Ubuntu は最小限の環境であり、python-dev パッケージはインストールされていません。 #apt-get 環境を更新 apt-get update #python dev パッケージをインストールします apt-get install python-dev #jupyterをインストールする pip インストール jupyter デフォルトでは、jupyter にはローカル アドレスからのみアクセスできます。jupyter にリモートからアクセスできるようにするには、構成を緩和する必要があります。リモート アクセスを有効にする場合は、パスワードを設定する必要があります。Jupyter の構成ファイルは、暗号化された暗号テキスト パスワードのみをサポートします。 #jupyter 設定ファイルを生成します。これにより、設定ファイル .jupyter/jupyter_notebook_config.py が生成されます。 jupyter ノートブック --generate-config #ipythonを使用してパスワードを生成する In [1]: from notebook.auth import passwd [2]: passwd() の場合 パスワードを入力してください: パスワードを確認してください: 出力[2]: 'sha1:******' # 設定ファイル .jupyter/jupyter_notebook_config.py の次のパラメータを変更します c.NotebookApp.ip='*' # すべてのアドレスをバインドします c.NotebookApp.password = u'生成されたパスワード' c.NotebookApp.open_browser = False #起動後にブラウザで自動的に開くかどうか c.NotebookApp.port =8888 #アクセスポートを指定します。デフォルトは8888です。対応するマップされたdockerポートに注意してください 設定が完了したら、jupyter notebook コマンドで Jupyter を起動できます。コンテナ内で直接 root ユーザーを使用する場合、Jupyter を起動するコマンドは jupyter notebook --allow-root です。 最後のコマンドは次のとおりです。 docker run -it --name jupytertest -p 8888:8888 -v ~/mnt:/mnt jupyter-ubuntu:v1 su root -c 'jupyter notebook --allow-root' -p はポート マッピング、-v はパス マウント マッピングです。 起動が成功したら、http://ubuntu-ip:8888 を使用してアクセスします。 補足: docker でリモート Jupyter を作成する リモートサーバーのDockerコンテナ内でコマンドを使用するjupyterノートブック --port=8888 --allow-root jupyter を実行できます。 注意すべき点は、現在の docker コンテナのポートが 8888 の場合、--port=8888 を省略できることです。現在の docker コンテナのポートが 8888 でない場合は、jupyter を実行するときに、現在の docker コンテナのポートと一致するようにポートを指定する必要があります。 現在のdockerコンテナのポートを忘れた場合は、dockerの外部でコマンドを使用できます。 ドッカーps チェック。 jupyter を実行すると、インターフェイスにログのようなものが多数出力されます。次のように: 現在のインターフェースを保持し、トークン(赤で囲まれた部分)を記録します。 実行後、ローカル ブラウザーにリモート サーバーの IP (jupyter を実行している Docker コンテナーのポート番号) を入力します。たとえば、192.168.0.101:8888 などです。 ログインインターフェースは次のとおりです。パスワードを設定したくない場合は、トークンを使用して直接ログインできます。 パスワードを設定する場合は、トークンを使用してパスワードを設定できます。次回ログインするときは、トークンの代わりにパスワードを直接使用できます。 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。 以下もご興味があるかもしれません:
|
<<: Web デザイン リファレンス Firefox デフォルト スタイル
0. タグとは何ですか? XML/HTML コードコンテンツをクリップボードにコピー<入力 t...
1. 先頭のあいまいクエリではインデックスを使用できません (「%XX」や「%XX%」など)コード値...
序文みなさんこんにちは。CSS ウィザードの alphardex です。この記事では、three.j...
環境: init_worker_by_lua、set_by_lua、rewrite_by_lua、a...
MySQL の mysql 5.7.18 zip バージョンは、クリックして次のステップをクリックし...
この記事の例では、音楽プレーヤーを実装するためのJSの具体的なコードを参考までに共有しています。具体...
1. 仮想環境はプロジェクトに従い、単一のプロジェクト用の仮想環境を作成します(Python 3.4...
注意: docker-compose.yml ファイルを書き込むときは、すべてのコロン (:) とダ...
カルーセルとは何ですか?カルーセル: モジュールまたはウィンドウで、コンピューターでマウスをクリック...
目次序文最初のステップ:ステップ2: このmy.iniを変更する要約する序文問題の説明:不正な文字列...
Nginx は、マスター プロセス (MasterProcess) と、同じ数のホスト CPU コア...
最近、あるプロジェクトに取り組んでいたとき、ページに透かし効果を追加するように依頼されました。さっそ...
MySQL 5.7.13 Mac用インストールチュートリアル、非常に詳細で、以下のように記録されてい...
<スタイル タイプ="text/css">コードをコピーコードは次の...
<br />解決手順は次のとおりです。スタート -> 実行 -> reged...