2017-06-20 73 views
0

服務燒瓶所以我敲我的頭就這個問題在過去的小時,我有一個泊塢窗,compose.yml文件Nginx的碼頭工人容器不接受,並從容器

version: '2' 

services: 
    web: 
    restart: always 
    build: ./web_app 
    expose: 
     - "8000" 
    ports: 
     - "8000:8000" 
    volumes: 
     - ./web_app:/data/web 
    command: /usr/local/bin/gunicorn web_interface:app -w 4 -t 90 --log-level=debug -b 0.0.0.0:8000 --reload 
    depends_on: 
     - postgres 

    nginx: 
    restart: always 
    build: ./nginx 
    ports: 
    - "8080:80" 
    volumes_from: 
     - web 
    depends_on: 
     - web 

    postgres: 
    restart: always 
    image: postgres:latest 
    volumes_from: 
     - data 
    volumes: 
     - ./postgres/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d 
     - ./backups/postgresql:/backup 
    expose: 
     - "5432" 

    data: 
    restart: always 
    image: alpine 
    volumes: 
     - /var/lib/postgresql 
    tty: true 

然而,當我docker-compose up,然後導航到本地主機:8880,我沒有得到任何服務。就像nginx服務器不接受通過本地主機的連接。

nginx.conf

server { 

    listen 80; 
    server_name localhost; 
    charset utf-8; 

    location /static/ { 
     alias /data/web/crm/web_interface; 
    } 

    location = /favicon.ico { 
     alias /data/web/crm/web_interface/static/favicon.ico; 
    } 

    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/Dockerfile

FROM nginx:latest 

RUN rm /etc/nginx/conf.d/default.conf 

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

這是什麼在我的終端:terminal shot

我一直非常密切關注this教程,但它似乎不能爲我擁有的Flask應用程序提供服務創建。有任何想法嗎?

+0

告訴我是否缺少一些部分...您將8080暴露到nginx容器中,但您的nginx偵聽端口80. – German

回答

1

嘗試改變端口映射如下nginx服務:

ports: 
    - "8880:80" 

或使nginx的監聽端口8080

+0

感謝您的輸入,但它仍然是相同的結果... –

+0

實際上在第二次檢查時,林不知道是否因爲你或@德國人的建議,當我導航到本地主機:8080然後屏幕加載一段時間,然後返回504 nginx錯誤。所以這是一個積極的方向。 –

+0

@ AndrewGraham-Yooll您可以使用您當前的配置更新您的問題嗎? –