为什么这个docker-compose / django设置中没有nginx处理请求?

时间:2016-05-24 00:59:12

标签: django nginx docker docker-compose

我试图学习码头和码头组合,并遇到了障碍。

堆栈是一个python:2.7基本映像,提供django页面,这部分工作正常。我现在想把nginx作为反向代理放在它前面。当我访问localhost:8000时,我按预期获得了django页面。当我加载没有端口的localhost时,我什么也得不到("问题加载页面")。我假设django容器的端口8080和nginx端口80之间的连接没有发生,而且我对docker这么新,以至于它可能很简单,我不是看到。

搬运工-compose.yml

version: '2'
services:
  web:
    build: ./app/
    command: python manage.py runserver 0.0.0.0:8000
    volumes:
      - ./app/:/code
    ports:
      - "8000:8000"
    depends_on:
      - db
  nginx:
    restart: always
    build: ./nginx/
    ports:
      - "80:80"
    volumes:
      - /www/static
    volumes_from:
      - web
    links:
      - web:web

  # probably not relevant to my issue
  db:
    image: postgres
  redis:
    restart: always
    image: redis:latest
    ports:
      - "6380:6380"
    volumes:
      - ./redisdata/:/data

nginx config:

server {
    listen 80;
    server_name 127.0.0.1;
    charset utf-8;

    location /static {
        alias /code/static;
    }

    location / {
        proxy_pass http://web:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

nginx服务成功启动并且似乎正在运行。我使用

检查了它的日志
docker-compose logs nginx

它是空的。

0 个答案:

没有答案