pythonライブラリとJupyterを使用してdockerイメージを作成しました。オプション-p 8888:8888
でコンテナを起動して、ホストとコンテナ間のポートをリンクします。コンテナー内でJupyterカーネルを起動すると、localhost:8888
で実行されています(ブラウザーが見つかりません)。コマンドjupyter notebook
を使用しました
しかし、ホストから、ホストのブラウザーでJupyterを操作するために使用する必要があるIPアドレスは何ですか?
コマンドifconfig
を使用すると、eth0
、docker
、wlan0
、lo
が見つかります...
ありがとう!
0.0.0.0
:jupyter notebook -i 0.0.0.0
でノートブックを実行する必要があります。 localhostで実行すると、コンテナ内からのみ使用可能になります。
ホストマシン:docker run -it -p 8888:8888 image:version
コンテナ内:jupyter notebook --ip 0.0.0.0 --no-browser --allow-root
ホストマシンはこのURLにアクセスします:localhost:8888/tree
初めてログインするとき、トークンでログオンするためのリンクが端末に表示されます。
Jupyterノートブックサーバーへのリンクを取得するには:
docker run
コマンドの後、ハイパーリンクが自動的に生成されます。次のようなものです:http://localhost:8888/?token=f3a8354eb82c92f5a12399fe1835bf8f31275f917928c8d2 :: /home/jovyan/work
後で再びリンクを取得したい場合は、docker exec -it <docker_container_name> jupyter notebook list
と入力できます。
docker run
コマンドは、コンテナのポートを開いてホストブラウザーからの接続を許可し、-pでポートをdockerコンテナーに割り当て、docker images
からjupyterイメージを選択するために必須です。
docker run -it -p 8888:8888 image:version
コンテナ内で、開いたポートを割り当てるノートブックを起動します。
jupyter notebook --ip 0.0.0.0 --port 8888 --no-browser --allow-root
http:// localhost:8888 のデスクトップブラウザからノートブックにアクセスします。ノートブックは、ノートブックを作成するときに生成されたトークンの入力を求めます。
以下は、ドッカーツールボックスを使用してWindows 7で実行する方法です。
Dockerツールボックスを使用している場合は、Dockerクイックスタートターミナルを開き、次のIPをメモします。
docker is configured to use the default machine with IP 192.168.99.100
For help getting started, check out the docs at https://docs.docker.com
tensorflowインストールWebサイト からdockerコマンドを実行したら:
docker pull tensorflow/tensorflow # Download latest image
docker run -it -p 8888:8888 tensorflow/tensorflow # Start a Jupyter notebook server
次のようなメッセージが表示されます。
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://127.0.0.1:8888/?token=d6e80acaf08e09853dc72f6b0f022b8225f94f
ホストで、127.0.0.1を192.168.99.100に置き換えて使用しますそのURLの残りの部分
コマンドjupyter notebook --allow-root --ip[of your container]
を使用するか、オプション--ip0.0.0.0
を使用してすべてのIPへのアクセスを許可できます。
Manifold オープンソースの最近のトーラスプロジェクトをチェックしてください。私たちは、MLエンジニアがチーム全体で一貫した開発環境を備えた新しいプロジェクトを簡単に実行できる方法を探していました。このPython cookiecutterは、Docker Hubに配置したプリベイクされたML開発イメージを使用するDockerfileと、すべてのポート転送を処理するDocker Compose構成を含む新しいプロジェクト構造を作成します。あなたのために。構成は、ホストマシンで開いているポートを選択して、コンテナ内の8888で実行されているノートブックサーバーに転送するように記述されています。マシン上で複数のノートブックサーバーを実行する手間はもうありません!うまくいけば、これが役立つことを確認してください!
Githubリポジトリ: https://github.com/manifoldai/docker-cookiecutter-data-science
なぜ構築したのか(デモ付き): https://medium.com/manifold-ai/torus-a-toolkit-for-docker-first-data-science-bddcb4c97b52
コンテナで次を実行して、ローカルマシンで使用できるようにします(DockerマシンのIPアドレスを使用)。
jupyterノートブック--ip 0.0.0.0 --allow-root
コンテナの設定によっては、-allow-rootフラグを指定する必要がない場合があります。