2017-11-14 9 views
0

私は基本的なdjangoプロジェクトを持っていますが、ドッカーを使ってローカルで実行しようとしています。私はドッカーファイルを持っています。私はドッカーのイメージを構築する。私はドッカーの画像を走らせた。それは実行されているが、それはドッキングウィンドウサーバに接続されていないように私のWebページには、画面上のエラーを示しています...ここで私が持っているものです。ドッカー画像が実行されていますが、ウェブページエラー - Docker

ドッキングウィンドウのファイル:

FROM python:3 
WORKDIR general 
COPY requirements.txt ./ 
EXPOSE 8000 
RUN pip install -r requirements.txt 
COPY . . 
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"] 

ここでは私がどのようです建物高と、このプロジェクト実行している:ここで

omars-mbp:split omarjandali$ docker build -t splitbeta/testing2 . 
Sending build context to Docker daemon 223.7kB 
Step 1/7 : FROM python:3 
---> 79e1dc9af1c1 
Step 2/7 : WORKDIR general 
---> 04a6f8a7f92a 
Removing intermediate container b2ffb485e485 
Step 3/7 : COPY requirements.txt ./ 
---> 649d77ec499e 
Step 4/7 : EXPOSE 8000 
---> Running in 7d8d6fe8de1d 
---> c328d885a5f1 
Removing intermediate container 7d8d6fe8de1d 
Step 5/7 : RUN pip install -r requirements.txt 
---> Running in 1c9aca43dc14 
Collecting Django==1.11.5 (from -r requirements.txt (line 1)) 
    Downloading Django-1.11.5-py2.py3-none-any.whl (6.9MB) 
Collecting gunicorn==19.6.0 (from -r requirements.txt (line 2)) 
    Downloading gunicorn-19.6.0-py2.py3-none-any.whl (114kB) 
Collecting pytz (from Django==1.11.5->-r requirements.txt (line 1)) 
    Downloading pytz-2017.3-py2.py3-none-any.whl (511kB) 
Installing collected packages: pytz, Django, gunicorn 
Successfully installed Django-1.11.5 gunicorn-19.6.0 pytz-2017.3 
---> 602e88557c8b 
Removing intermediate container 1c9aca43dc14 
Step 6/7 : COPY . . 
---> 55cff629cb51 
Step 7/7 : CMD python manage.py runserver 0.0.0.0:8000 
---> Running in efd75f8fb602 
---> 2cef664a626d 
Removing intermediate container efd75f8fb602 
Successfully built 2cef664a626d 
Successfully tagged splitbeta/testing2:latest 
omars-mbp:split omarjandali$ docker run -d spltibeta/testing2 

は、プロジェクトの実行中である:

omars-mbp:split omarjandali$ docker ps 
CONTAINER ID  IMAGE    COMMAND     CREATED    STATUS    PORTS    NAMES 
fc14f03a18b0  splitbeta/testing2 "python manage.py ..." 3 seconds ago  Up 3 seconds  8000/tcp   loving_volhard 

Webページは、GIでありますテンプレートページを表示するようになっているとき

This site can’t be reached 

127.0.0.1 refused to connect. 

....次のエラーをヴィング私は昨日、それが実行して得たが、それは...私はなぜ知らない、それ以上に機能していません。私は、端末

+0

確認すると、ブラウザでポート8000​​に接続しようとしていますか? –

+0

ええ私は '120.0.0.1:8000/users'を使用しています。@SörenWeber –

+0

同じことをやってみました。これは昨日起こっていて、私はそれが働いている何かをしましたが、私はそれがどのように働いているのか覚えていません。 –

答えて

1

で私dockerhubアカウントにログインしてい

私はあなたのドッカーコマンドは、デフォルトでポート8000​​を公開していない実行思わ何も変更didntの、ドッキングウィンドウは、ホストシステム上で任意のコンテナ港を公開しません。あなたが明示的にそれを伝えていなければ。 -p or --publish option of docker run使用してみてください:

docker run -d -p 8000:8000 spltibeta/testing2 

また、ご使用のホスト・システム上のコンテナのすべての露出のポートを公開する-Pまたは--publish-allオプションを使用することができます。これにより、ホスト上にランダムなポートが割り当てられます。

docker run -d -P spltibeta/testing2 
+0

私はそれを試して、それは同じことをしました。これは昨日起こっていて、私はそれが働いていた何かをしましたが、私はそれがどのように働いているのか覚えていません –

+0

私は 'omars-mbp:split omarjandali $ docker run --name splitbeta_test2 -t splitbeta_test2'と入力していますメッセージ実行中のチェック... システムチェックで問題が検出されなかった(0沈黙)。 11月15日、2017 - 00:43:12 Djangoバージョン1.11.5、設定 'split.settings'を使用 http://.0.0.0.0:8000/ で開発サーバーを起動するCONTROL-Cでサーバーを終了します.'どの測定がサーバーが実行されているのか、Webページ上ではまだエラーメッセージが表示されています。なぜ起こっているのですか –

+0

私にとっては、ポートがホストシステムに公開されていないようです。 [docker port](https://docs.docker.com/engine/reference/commandline/port/)引数を使用して、マップされたポートを確認してください。多分これはヒントを与えるでしょうか? –

関連する問題