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

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

ただいまの
回答率

90.50%

  • Python

    11768questions

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

  • Docker

    1049questions

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

  • TensorFlow

    920questions

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

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,262

Y.Nak

score 5

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を使ってみよう クジラ飛行机  (著)

という本です。

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

+1

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

docker run -it gcr.io/tensorflow/tensorflow

でいいはずよ

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/02/12 17: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で起動できるものと記載されていますが、大分混乱しており…

    キャンセル

  • 2018/02/12 18:08

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

    キャンセル

checkベストアンサー

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/12 12:12

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

    >pythonのコマンドはpython3.xとかだったりしませんか?
    いえ、違います

    キャンセル

  • 2018/02/12 18:06

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

    キャンセル

  • 2018/02/17 15:22

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

    キャンセル

同じタグがついた質問を見る

  • Python

    11768questions

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

  • Docker

    1049questions

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

  • TensorFlow

    920questions