docker 图片是 运行 但网页错误 - Docker

docker image is running but webpage error - Docker

我有一个基本的 django 项目,我正试图通过 docker 在本地获取它 运行。我有 docker 文件。我构建 docker 图像。我 运行 docker 图片。它是 运行,但我的网页在屏幕上显示错误,好像它没有连接到 docker 服务器...这是我的:

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

本应显示模板页面的网页出现以下错误....

This site can’t be reached

127.0.0.1 refused to connect.

我昨天得到它 运行 但它不再工作了......我不知道为什么。我没有改变任何东西

我在终端机上登录了我的 dockerhub 帐户

您的 Docker 运行 命令似乎没有发布端口 8000。默认情况下,如果您不这样做,docker 将不会在主机系统上发布任何容器端口明确告诉它。尝试使用 -p or --publish option of docker run:

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

或者,您可以使用 -P 或 --publish-all 选项在主机系统上发布容器的所有公开端口。这将在主机上分配一个随机端口。

docker run -d -P spltibeta/testing2