繁体   English   中英

Docker 容器中 Django 上的“docker-compose run web”不在本地主机上运行网站

[英]'docker-compose run web' on Django in Docker container doesn't run website at localhost

Dockerfile

FROM python:3.7
FROM registry.gitlab.com/datadrivendiscovery/images/primitives:ubuntu-bionic-python36-v2020.1.9

ENV PYTHONUNBUFFERED 1

RUN mkdir /bbml

WORKDIR /bbml
RUN pip install -r requirements.txt
RUN pip install --upgrade pip
ADD . /bbml/

CMD [ "python", "./manage.py runserver 0.0.0.0:8800" ]

docker-compose.yml

version: '3'

services:
  web:
    build: .
    command: "python3 manage.py runserver 0.0.0.0:8800"
    container_name: bbml
    volumes:
      - .:/bbml
    ports:
      - "8800:8800"

因此,我设法通过执行“docker-compsoe run web”和 go 底部的标准“正在启动开发服务器”消息来使其正常运行,但是当我 go 到 localhost:8800 时,它说“无法访问站点” . 这是怎么回事?

Dockerfile

FROM python:3
FROM registry.gitlab.com/datadrivendiscovery/images/primitives:ubuntu-bionic-python36-v2020.1.9

ENV PYTHONUNBUFFERED 1
RUN mkdir /bbml
WORKDIR /bbml
COPY requirements.txt /bbml/
RUN pip install -r requirements.txt
COPY . /bbml

docker-compose.yml

version: '3'

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

检查您的文件夹权限并运行:

sudo docker-compose up

我发现了这个问题。 Docker 将在您实际需要的端口上运行 go to:8800 而不是 localhost:8800

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM