Docker работает, но не может получить доступ к локальному серверу разработки [Django] - PullRequest
0 голосов
/ 15 января 2020

Я не могу получить доступ к странице приветствия Django с locahost.

Я уже попробовал многие ответы, и, похоже, ничего не работает. Я сделал следующее:

  • Изменил мой порт с 8000 на 9000 и exposed их. У меня CMD из файла Docker.

  • Открыты несколько портов в файле docker-compose.yml, но ничего не работает.

  • Выполнить docker build . несколько раз после внесения изменений

  • Изменено ALLOWED_HOSTS на '*' и ['*']

Буду признателен за вашу помощь.

Конфиг:

Docker version 19.03.1, build 74b1e89e8a

OS: Windows 10 Home

Docker Toolbox

Dockerfile:

FROM python:3.7-alpine

ENV PYTHONUNBUFFERED 1
ENV PYTHONDONTWRITEBYTECODE 1

COPY ./requirements.txt /requirements.txt
RUN pip install -r /requirements.txt

RUN apk update && apk add libpq
RUN apk add --virtual .build-deps gcc python3-dev musl-dev postgresql-dev
RUN pip install psycopg2
RUN apk del .build-deps

RUN mkdir /myapp
WORKDIR /myapp
COPY ./myapp/myapp

RUN adduser -D user
USER user

docker -compose.yml:

version: "3"

services:
  db:
    image: postgres
  web:
    build: .
    command: sh -c "python manage.py collectstatic --no-input && python manage.py makemigrations && python manage.py migrate && python manage.py runserver 0.0.0.0:9000"
    environment:
      - DB_NAME=postgres
      - DB_USER=postgres
      - DB_PASS=postgres
      - DB_HOST=db
      - DB_PORT=5432
      - DEBUG=${DEBUG}
      - SECRET_KEY=${SECRET_KEY}
    volumes:
      - ./myapp:/myapp
    ports:
      - "9000:9000"
    depends_on:
      - db

Ответы [ 3 ]

0 голосов
/ 16 января 2020

Убедитесь, что на вашем хосте доступен порт 9000.

0 голосов
/ 19 января 2020

Если вы работаете в windows 10 Home и / или используете Docker Toolkit, откройте Kitemati c и нажмите на веб-превью. Это было то, что работало для меня.

0 голосов
/ 16 января 2020

В вашем файле docker, похоже, отсутствует команда EXPOSE. Добавьте это в конце к вашему dockerfile

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