Как подключить обратный прокси-сервер nginx к flaskapp (все работает в контейнерах)? - PullRequest
0 голосов
/ 22 мая 2019

Я пытаюсь развернуть докерскую флешкупп с помощью nginx. У меня есть два контейнера, один для flaskapp, другой для nginx, и я использую docker-compose для запуска обоих. Однако, когда я делаю docker-compose up и получаю доступ к localhost, загружается страница по умолчанию для nginx. Что не так с моей настройкой?

Мой docker-compose.yml:

version: '3'
services:
    dashboardflaskapp:
        image: example/dashboardflaskapp
        container_name: dashboardflaskapp
        environment:
            - CONFIG_OBJECT='config.DevConfig'
        expose:
            - "8080"
        volumes:
            - ./flaskapp:/opt/flaskapp
    nginx:
        image: example/dashboardnginx
        container_name: dashboardnginx
        ports:
            - "8080:8080"
        depends_on:
            - dashboardflaskapp

Мой докер-файл nginx:

FROM nginx:latest

COPY nginx.conf /etc/nginx/nginx.conf

Мой файл конфигурации nginx:

worker_processes 1;

events { worker_connections 1024; }

http {

    sendfile on;

    upstream dashboard {
        server dashboardflaskapp:8080;
    }

    server {
        listen 8080;

        location / {
            proxy_pass         http://dashboard/;
            proxy_redirect     off;
            proxy_set_header   Host $host;
            proxy_set_header   X-Real-IP $remote_addr;
            proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header   X-Forwarded-Host $server_name;
        }
    }

}

EDIT:

У меня работает колба с оружейным рожком.

FROM ubuntu:latest

RUN apt-get update
RUN apt-get install -y python2.7 python-pip

COPY requirements.txt /opt/dashboard/requirements.txt

RUN pip2 install -r /opt/dashboard/requirements.txt
COPY . /opt/dashboard

WORKDIR /opt/dashboard

EXPOSE 8080

CMD ["gunicorn", "--bind", "0.0.0.0:8080", "dashboard_app:app"]

...