无法看到在本地主机上的docker容器中运行的Django站点
我有一个Django应用程序,我将需要部署在亚马逊的EC2容器服务。 与此同时,为了testing部署,我试图首先在本地部署在Docker容器中,但即使运行简单的演示django应用程序,我也无法在localhost:8000上看到页面。
这是我的设置。
创build一个docker机器:
$ docker-machine create --driver virtualbox testmachine
在此之后,我build立了我的环境:
$ eval "$(docker-machine env testmachine)"
我为我的testing容器设置了一个Dockerfile:
FROM ubuntu RUN echo "deb http://archive.ubuntu.com/ubuntu/ $(lsb_release -sc) main universe" >> /etc/apt/sources.list RUN apt-get update RUN apt-get install python-pip -y RUN pip install django RUN mkdir django_test RUN cd django_test && \ django-admin.py startproject django_test .
然后我打电话
$ docker build -t dockertest . ... builds successfully $ docker run -d -i -t -p 8000:8000 dockertest cbef144ac068eb61b0c3e032448cc207c8f0384a9a67a710df6d9beb26d2ab32 $ docker attach cbef144ac068eb61b0c3e032448cc207c8f0384a9a67a710df6d9beb26d2ab32 root@cbef144ac068:/# cd django_test root@cbef144ac068::/django_test# python manage.py runserver 0.0.0.0:8000
这成功启动了服务器的容器的0.0.0.0:8000/。
但是,当我尝试在浏览器中转到localhost:8000时,出现“此网页不可用”。 我错过了什么?
原来我看着错误的IP。
要弄清楚正确的IP,我跑了:
$ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM testmachine * virtualbox Running tcp://192.168.99.100:2376
然后我在浏览器中加载了192.168.99.100:8000,就像一个魅力。
- Docker撰写无法为postgresql和redis创build容器
- Docker在django web应用+ postgres数据库上编写运行迁移
- Gunicorn ImportError:没有名为应用程序的模块
- 在这个Dockerfile中创buildPostgres用户名/密码在哪里?
- docker与pycharm 5
- Django重置API在Docker上不起作用
- 从Docker容器中的Django + Celery诊断API超时
- 运行Dockerized Django应用程序时,Gunicorn'Worker'引导失败
- Docker 1.9.1 – 错误2005(HY000):未知的MySQL服务器主机