Реакция, NodeJS, Nginx: ERR_CONNECTION_REFUSED - PullRequest
0 голосов
/ 09 апреля 2020

Я создаю приложение с

  1. React-интерфейсом, встроенным в сайт c и обслуживаемым с NGINX.
  2. A nodeJS бэкэндом, на порту 8080
  3. База данных SQL, которую запрашивает сервер NodeJS. SQL на 3306.

docker -compose объединяет все вместе для простоты развертывания.

Я подозреваю, что проблема с моей реализацией nginx.

Ошибка, которую я получаю при попытке отправить на сервер с внешнего интерфейса, следующая:

xhr.js:178 OPTIONS http://localhost:8080/auth net::ERR_CONNECTION_REFUSED

Вот мой файл NGINX, помещенный в /etc/nginx/conf.d/default.conf

server {
    listen       80;
    server_name  localhost;

    location / {
        root   /usr/share/nginx/html;
        index  index.html;
    }
}

server {
  listen    8080;
  server_name localhost;

  location / {
    proxy_pass http://dsw_api:8080;
  }
}

Вот мой файл docker -compose.yml.

version: "3.7"
services:
  sql:
    container_name: dsw_sql
    image: mysql
    restart: always
    command: --default-authentication-plugin=mysql_native_password
    volumes:
      - ./database:/docker-entrypoint-initdb.d
    environment:
      - MYSQL_PASSWORD=${SQL_PASS}
      - MYSQL_ROOT_PASSWORD=${SQL_PASS}
      - MYSQL_DB=${SQL_DB}
    networks:
      - dsw
    ports:
      - "3306:3306"

  api:
    container_name: dsw_api
    image: node:11
    volumes:
      - ./back:/app
    working_dir: /app
    env_file: .env
    networks:
      - dsw
    command: npm start
    ports:
      - "8080:8080"
    depends_on: 
      - sql
    restart: always

  client:
    container_name: dsw_client
    build: ./front
    environment:
      - REACT_APP_API_PORT=${REACT_APP_API_PORT}
      - REACT_APP_API_HOST=${REACT_APP_API_HOST}
      - SKIP_PREFLIGHT_CHECK=${SKIP_PREFLIGHT_CHECK}
    ports:
      - 80:80
    networks:
      - dsw
    depends_on:
      - api
      - sql
    restart: always

networks:
  dsw:
    driver: bridge
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...