48730


こんにちは。

現在、練習の意味を込めて、dockerのコンテナ内でjupyterを一から構築しようとしています。  
jupyternotebook自体が最初から入ったイメージのことは既に知っており、使い方も把握しているのですが、今回はそのようなイメージを使わず、自分で一から作れるかをやって見るというのが趣旨になります。  
最終的にはこれをDockerfileに落とし込めるかまでやってみようと思っています。

その中で、Dockerへのjupyterのインストールと起動まではうまく行ったのですが、最後のブラウザからのアクセスのところでつまづいています。

具体的には、jupyter
notebookの起動時に出てくるIPアドレスとポート番号でブラウザからアクセスしようとするのですが、読み込み中のバーが最初のところで止まり、画面も含めてそこから一切反応しなくなります。  
jupyterの設定は、IPアドレスは'*'で指定しないようにしており、ポートは"8888"で指定しています。

そもそもCentOSの設定上で対応するIPアドレスか何かを決める必要があるのかな(「開放」のようなイメージです)と勝手に思っているのですが、ググり方が悪いのか有効な解決策が見つけられていません。

何か心当たりがあれば、ご教示いただければと思います。

このDockerコンテナの構築方法については下記に記しております。

イメージ(OS):CentOS7  
構築手順 :yumでgitをインストール  
-> gitでpyenvをクローン  
-> pyenvでpython3.6.5をインストール

### 追記

> コメント：Docker に渡す権限が足りていないような気がします。その Docker
> イメージでコンテナを起動する際にどのようなコマンドを打っているのか追記して頂けませんか？

→ 下記のように特段、権限設定のようなものはしておりません。ここでIPアドレスやポート番号の設定が必要なのでしょうか。

[code]

    docker run -it --name test_jupyter centos /bin/bash
    
[/code]


CC BY-SA 4.0
2018-09-22T14:56:22.950
48645
2018-09-26T21:39:34.183
2018-09-26T12:07:06.640
19110
29884
question
docker jupyter-notebook
ローカルPC上にDockerで仮想環境を構築、jupyterを入れた場合のローカルからアクセスする方法


Docker コンテナ内部で起動している Jupyter Notebook
へローカルマシンからポート経由でアクセスしようとしている場合、コンテナ内部のポートとローカルマシンのポートを繋ぐことが必要です。

たとえば Jupyter 公式が配布している `jupyter/scipy-notebook` イメージでは起動時に [`-p`
オプション](http://docs.docker.jp/engine/reference/run.html#expose)を使って以下のような起動の仕方をすると[書かれています](https://jupyter-
docker-stacks.readthedocs.io/en/latest/index.html)。

[code]

    docker run -p 8888:8888 jupyter/scipy-notebook:2c80cf3537ca
    
[/code]

質問者さんが自作なさっているイメージがどのようなものか分かりませんが、少なくともポートは公開するようにしておかないとコンテナ内部へポート経由でアクセスすることはできないはずです。


CC BY-SA 4.0
2018-09-26T12:04:40.707
48730
2018-09-26T21:39:34.183
2018-09-26T21:39:34.183
19110
19110
48645
answer