Не могу сделать запрос от React до Spring при загрузке в контейнере Docker - PullRequest
0 голосов
/ 16 января 2020

Итак, я развернул свое серверное приложение (Spring Boot) и приложение React в docker, и я получаю сообщение об ошибке при входе в систему через браузер: POST http://main: 8080 / omp / login net :: ERR_NAME_NOT_RESOLVED Я изменил файл пакета. json в соответствии с некоторыми решениями, но он не исправил его. docker -compose.yml файл (основной является внутренним, а веб - внешним):

# Docker Compose file Reference (https://docs.docker.com/compose/compose-file/)

version: '3.7'

# Define services
services:


  # Database Service (Mysql)
  db:
    image: mysql:5.7
    ports:
      - "3306:3306"
    restart: always
    environment:
      MYSQL_DATABASE: omp
      MYSQL_ROOT_PASSWORD: root
      MYSQL_ROOT_HOST: '%'
    volumes:
      - db-data:/var/lib/mysql
    networks:
      - backend  
  rabbitmq:
    image: rabbitmq:3-management-alpine
    container_name: rabbitmq
    volumes:
      - rq:/etc/rabbitmq/
      - rq:/var/lib/rabbitmq/
      - rq:/var/log/rabbitmq/
    ports:
      - 5672:5672
      - 15672:15672
    networks:
      - backend 
  soap:
    build: ./soap
    working_dir: /soap
    container_name: soap
    volumes:
      - ./soap:/soap
      - ~/.m2:/root/.m2
    command: mvn clean spring-boot:run
    restart: always
    ports:
      - "8081:8081"
    depends_on:
      - db
    networks:
      - backend
  main:
    build: ./MainBackEnd
    working_dir: /MainBackEnd
    container_name: main
    volumes:
      - ./MainBackEnd:/MainBackEnd
      - ~/.m2:/root/.m2
    command: mvn clean spring-boot:run
    restart: always
    ports:
      - "8080:8080"
    depends_on:
      - db
      - rabbitmq
    networks:
      - backend
      - frontend
  web:
    restart: always
    container_name: app-interface
    build: ./ReactFrontEnd
    ports: 
      - "3000:3000"
    depends_on: 
      - main
    networks: 
      - frontend
# Volumes
volumes:
  db-data:
  rq:

# Networks to be created to facilitate communication between containers
networks:
  backend:
  frontend: 

Это то, что я добавил в пакет- json:

"proxy" : "http://main:8080",

Я думаю, что по каким-то причинам мои звонки из javascript не могут "достичь" (по крайней мере, неправильно) внутреннего контейнера, потому что серверная часть прекрасно работает при попытке работать с почтальоном.

Делает что-нибудь есть какое-то решение для этого?
Спасибо! :)

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