«Соединение было сброшено» в localhost: 8000 с использованием django и docker - PullRequest
1 голос
/ 12 февраля 2020

После запуска docker-compose up,

Запуск docker_ django ... выполнено

Подключение к docker_ django

docker_ django | Отслеживание изменений файлов с помощью StatReloader

docker_ django | Выполнение системных проверок ...

docker_ django | Проверка системы не выявила никаких проблем (0 отключено).

docker_ django | 12 февраля 2020 - 07: 26: 35

docker_ django | Django версия 3.0.3, с использованием настроек 'backend.settings'

docker_ django | Запуск сервера разработки с http://127.0.0.1: 8000 /

docker_ django | Выйдите из сервера с CONTROL- C.

, когда я подключаюсь к http://127.0.0.1: 8000 / , это показывает это enter image description here Нет проблема / ошибка при запуске команды docker -compose, но только при посещении сайта.

Я использую Ubuntu 19.10, и проект имеет django v3.

Dockerfile

FROM python:3

ENV PYTHONUNBUFFERED 1

RUN mkdir /code
WORKDIR /code

COPY . /code/

RUN pip install -r requirements.txt

docker -compose.yml

version: '3'

services:
    web:
        build: .
        container_name: docker_django
        command: python manage.py runserver
        volumes:
            - .:/code
        ports:
            - "8000:8000"

1 Ответ

2 голосов
/ 12 февраля 2020

Ваше приложение слушает только запросы, поступающие от localhost, которые в случае контейнера являются запросами, приходящими изнутри контейнера.

Попробуйте этот составной файл:

version: '3'

services:
    web:
        build: .
        container_name: docker_django
        command: python manage.py runserver 0.0.0.0:8000
        volumes:
            - .:/code
        ports:
            - "8000:8000"

исправлена ​​опечатка для номера порта в соответствии с предложением

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...