python - Apabila menggunakan Docker + Gunicorn + Nginx dalam persekitaran pembangunan, hanya antara muka selamat datang Niginx boleh dilihat
滿天的星座
滿天的星座 2017-06-16 09:19:02
0
1
1032

Gunakan Docker + Gunicorn + Nginx untuk menjalankan Django dalam persekitaran pembangunan Selepas pelayan bermula, anda hanya boleh melihat antara muka selamat datang Nginx.

Fail Docker adalah seperti berikut:

django:

FROM python:3.5

ENV PYTHONUNBUFFERED 1

RUN groupadd -r django \
    && useradd -r -g django django

COPY ./requirements.txt /requirements.txt
RUN pip install --no-cache-dir -r /requirements.txt \
    && rm -rf /requirements.txt

COPY ./compose/django/gunicorn.sh /
RUN sed -i 's/\r//' /gunicorn.sh \
    && chmod +x /gunicorn.sh \
    && chown django /gunicorn.sh

COPY . /app

RUN chown -R django /app

RUN mkdir /static
RUN chown -R django /static

USER django

WORKDIR /app

nginx:

FROM nginx:latest
ADD nginx.conf /etc/nginx/sites-enabled/django_blog.conf

gunicorn.sh

#!/bin/sh
python /app/manage.py collectstatic --noinput
/usr/local/bin/gunicorn blogproject.wsgi -w 4 -b 127.0.0.1:8000 --chdir=/app

nginx.conf konfigurasi:

server {
    charset utf-8;
    listen 80 default_server;

    location /static {
        alias /app/static;
    }

    location / {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_pass http://127.0.0.1:8000;
    }
}

docker-compose.yml

version: '3'

services:
  django:
    build:
      context: .
      dockerfile: ./compose/django/Dockerfile
    command: /gunicorn.sh

  nginx:
    build: ./compose/nginx
    depends_on:
      - django

    ports:
      - "80:80"

Jalankan arahan:
docker-compose build
docker-compose up

Nampaknya Nginx tidak memajukan permintaan kepada Gunicorn? Tolong beri saya nasihat!

滿天的星座
滿天的星座

membalas semua(1)
滿天的星座

Sila masukkan bekas nginx untuk melihat lokasi fail konfigurasi

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan