Назад | Перейти на главную страницу

Ошибка отказа в подключении Nginx Nodejs

Я следую этому руководству YouTube о том, как настроить сервер Nginx в Docker, но получаю следующую ошибку

proxy_1 | 2018/07/14 22:18:24 [ошибка] 5 # 5: * 1 connect () не удалось (111: соединение отклонено) при подключении к восходящему потоку, клиент: 172.19.0.1, сервер:, запрос: "GET / HTTP / 1.1 ", вверх по течению:"http://127.0.0.1:49160/", хост:" localhost "

/docker_compose.yml

version: '3'
services:
  nodecluster:
        build: nodecluster
        ports:
        - "49160:8000"
  proxy:
    build: proxy
    ports:
    - "80:80"  

nodecluster / Dockerfile

FROM node:8

# Create app directory
WORKDIR /usr/src/app

# Install app dependencies
# A wildcard is used to ensure both package.json AND package-lock.json are copied
# where available (npm@5+)
COPY package*.json ./

RUN npm install
# If you are building your code for production
# RUN npm install --only=production

# Bundle app source
COPY . .

EXPOSE 8000
CMD [ "npm", "start" ]

прокси / Dockerfile

FROM nginx:alpine

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

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

прокси / proxy.conf

listen 80;
server {
    location / {
        proxy_pass http://127.0.0.1:49160;
    }
}

Я googledd и просматривал разные форумы для ответа, независимо от того, что я пробовал, ошибка отказа в соединении все еще существует. Он запущен и работает, и если я обращаюсь к нему напрямую, используя 127.0.0.1:49160 / localhost: 49160, он работает, но никогда не перенаправляется с прокси на 127.0.0.1:49160 или что-то подобное, когда я использовал http: // nodecluster: 49160 / или что угодно.

Ваш nginx пытается подключиться к localhost порт 49160, но ваш nodecluster работает в другом контейнере, у которого есть другой IP-адрес.

Вам нужно найти правильное место назначения для nginx proxy_pass директиву и исправьте оператор.