首页 > 解决方案 > Django Web 应用程序 Docker - 无法连接

问题描述

我是 Django 和 Docker 的新手,我在输入站点 localhost:8000 时遇到问题。我构建了 django 应用程序,它在我的本地服务器上运行,但我想对我的应用程序进行 docker 化。所以我创建了两个文件: Dockerfile :

RUN python:3.6.7-alpine
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD ./ /code/
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]

和 docker-compose.yml

version: '3'

services:
  web:
    build: .
    command: python mysite/manage.py runserver 8000
    ports:
      - "8000:8000"

我的下一步:

docker built --tag django_docker:latest .

和:

docker run django_docker

它是开放式服务器,但是当我想从浏览器打开 localhost:8000 时,由于“无法连接”而无法打开

我的错在哪里?

有关 django 应用程序的更多信息:它是 Python Crash Course : Learning_log 书中的项目。我想构建一个图像并将其推送到集线器 docker,但我被卡住了。感谢帮助!

标签: djangodockerdocker-composedockerfile

解决方案


您正在使用一个docker-compose.yml文件,因此您需要使用 docker-compose 命令来运行它:

docker-compose up

这就是您所需要的,您可以在官方文档中阅读更多相关信息。

要在不使用 docker compose 的情况下运行它,那么您的 docker 命令需要:

docker run --publish 8000:8000 django_docker

如果您想将该站点限制为仅在您的本地主机上可用,请绑定到127.0.0.1

docker run --publish 127.0.0.1:8000:8000 django_docker

推荐阅读