質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

908閲覧

DockerにTensorFlowをインストールできない

Y.Nak

総合スコア13

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/02/11 03:53

編集2018/02/11 06:26

TensorFlowをイオンストールしようと、Docker(Docker Quickstart Terminal)上で書きコマンドを入力したところ、エラーが発生

docker run -it b.gcr.io/tensorflow/tensorflow:latest-devel

を入力

Unable to find image 'b.gcr.io/tensorflow/tensorflow:latest-devel' locally C:\Program Files\Docker Toolbox\docker.exe: Error response from daemon: Get https://b.gcr.io/v2/tensorflow/tensorflow/manifests/latest-devel: unknown: b.gcr.io domain is disabled. See https://cloud.google.com/container-registry/docs/support/deprecation-notices. See 'C:\Program Files\Docker Toolbox\docker.exe run --help'.

と表示されるので

https://cloud.google.com/container-registry/docs/support/deprecation-notices

をブラウザでみると

Google Container Registry に関連するサポート終了をお知らせします。Docker のサポート終了の予告とその変更履歴もご覧ください。2016 年 12 月 14 日に Google は、Docker v1.13 がリリースされる 2017 年 2 月 28 日をもって、Docker Engine による v1 プロトコルのサポートが終了することを発表しました。

と記載されており、上記コマンドではインストールできないのかと思いました。

そこでTensorFlowの公式サイトを覗き、Dockerでのインストール方法みると下記のコード入力を指示されていますが

docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow

これだとJupyter notebookを開くことになり、TensorFlowがDocker上にインストールできるわけではありませんでした。
実際にTensorFlowがインストールできているか確かめてたところ

$ python >>> import tensorflow as tf Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'tensorflow'

と、エラーとなり、やはりTensorFlowがインストールできておりませんでした。
上記手順で何が間違っているのかもはや分からなくなりました。どうかご教示頂けますと幸いです。

なお、初心者のため、参考にした本は

Pythonによるスクレイピング&機械学習 開発テクニック BeautifulSoup,scikit-learn,TensorFlowを使ってみよう クジラ飛行机 (著)

という本です。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow だけど Docker 内 に tensorflow 展開および起動して その 8888 ポートに ローカルの 8888 ポートを紐づけるなんで紐づけが不要なら

docker run -it gcr.io/tensorflow/tensorflow

でいいはずよ

投稿2018/02/12 03:45

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Y.Nak

2018/02/12 08:41

ご回答ありがとうございます。 下記実行しました ※tokenは〇〇で伏せております $ docker run -it gcr.io/tensorflow/tensorflow [I 08:35:08.955 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret [W 08:35:08.985 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended. [I 08:35:08.992 NotebookApp] Serving notebooks from local directory: /notebooks [I 08:35:08.992 NotebookApp] 0 active kernels [I 08:35:08.992 NotebookApp] The Jupyter Notebook is running at: [I 08:35:08.992 NotebookApp] http://[all ip addresses on your system]:8888/?token=〇〇 [I 08:35:08.992 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [C 08:35:08.992 NotebookApp] Copy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=〇〇 と表示されたため、ブラウザでhttp://192.168.99.100:8888/?token=〇〇を起動 jupyterが開かれる Dockerにもどって「ctr+C」で一旦上記開いたサーバーを閉じて、再度 $ python >>> import tensorflow as tf を確かめるも同じ質問内容と同じ結果でした。 私が勘違いしているかもで大変恐縮ですが、そもそもtensorflowはjupyter上で使用するものでしょうか? 本にはDockerで起動できるものと記載されていますが、大分混乱しており…
mkgrei

2018/02/12 09:08

一応お聞きしますが、dockerの使い方は把握していますか? コンテナをたてて、その中に入ってコマンドを実行する方法など。
guest

0

ベストアンサー

jupyterでもtensoflowをインポートできませんか?

pythonのコマンドはpython3.xとかだったりしませんか?


追記

docker run -it gcr.io/tensorflow/tensorflow bash
でコンテナを起動して、そのままコンテナに入ります。
そこからpythonと打てば使用できるはずです。

python3.5も入っているようですが、そちらにはtensorflowはインストールされていません。
docker/python3.x/tensorflowを使いたいのならば自分でDockerfileでビルドしてください。


docker run -it gcr.io/tensorflow/tensorflowの後にctr+Cするとホストのターミナルに戻ります。
ついでにコンテナも停止してしまいます。
docker ps -aで停止したコンテナ名(CONTAINER_NAME)を見つけて、
docker start CONTAINER_NAMEを入力して起動します。
docker exec -it CONTAINER_NAME bashすることで起動したコンテナに入ることができます。
その後にpythonと打つことでコンテナ内のpythonを実行することができます。

投稿2018/02/11 09:21

編集2018/02/15 05:34
mkgrei

総合スコア8560

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Y.Nak

2018/02/12 03:12

ご回答ありがとうございます。 >jupyterでもtensoflowをインポートできませんか? 今回jupyter(ブラウザ上)による起動ではなく、Docker上でtensorflowを動かしたいのです。 >pythonのコマンドはpython3.xとかだったりしませんか? いえ、違います
mkgrei

2018/02/12 09:06

docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow bash はどうですか?
Y.Nak

2018/02/17 06:22

ありがとうございます。解決できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問