Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django Docker应用程序容器don';运行后无法在浏览器上打开_Python_Django_Docker_Dockerfile - Fatal编程技术网

Python Django Docker应用程序容器don';运行后无法在浏览器上打开

Python Django Docker应用程序容器don';运行后无法在浏览器上打开,python,django,docker,dockerfile,Python,Django,Docker,Dockerfile,我将我的django应用程序dockerize,这是我的Dockerfile: FROM python:3.6-alpine EXPOSE 8000 RUN apk add --no-cache make linux-headers libffi-dev jpeg-dev zlib-dev RUN apk update && apk add postgresql-dev gcc python3-dev musl-dev RUN mkdir /Code WORKDIR /Code

我将我的django应用程序dockerize,这是我的Dockerfile:

FROM python:3.6-alpine
EXPOSE 8000
RUN apk add --no-cache make linux-headers libffi-dev jpeg-dev zlib-dev
RUN apk update && apk add postgresql-dev gcc python3-dev musl-dev
RUN mkdir /Code
WORKDIR /Code
COPY ./requirements.txt .

RUN pip install --upgrade pip
RUN pip install -r requirements.txt
ENV PYTHONUNBUFFERED 1

COPY . /Code/

ENTRYPOINT python /Code/core/manage.py runserver 0.0.0.0:8000
好吧,我建立我的形象并运行它:

docker run -p 8000:8000 --link postgres:postgres cath11/test_app
一切似乎都已完成:

但当我在上打开浏览器或我的应用程序未打开时

为什么我的django应用程序似乎在我的容器上运行,我公开了端口,但在托管浏览器中看不到它


非常感谢您提前

使用
docker machine ip default
检查ip,并使用它而不是
localhost
。 从技术上讲,django应用程序是在容器中提供的,而不是您的本地主机


因此,在您的情况下,您应该尝试
http://:8000/

您在Windows上吗?如果是这样,您是在使用Docker Toolbox还是Docker Machine,还是在使用本机Docker桌面应用程序?现在我在Mac电脑上使用Docker Toolbox似乎可以工作,但如何将内部ip链接到外部主机以使用127.0.0.1而不是Docker internal?谢谢,您可能需要将本地IP重定向到docker IP。但那将是一种黑客行为。你为什么要这么做?