Java клиент веб-сокета в docker -контейнер не может подключиться к серверу веб-сокета java в другом контейнере - PullRequest
0 голосов
/ 21 июня 2020

У меня есть супер простой файл docker -compose:

services:
  app:
    container_name: myapp
    build:
      context: .
      dockerfile: Dockerfile
    depends_on:
    - myapp-redis
    - myapp-partner
    ports:
    - 1967:1967
    restart: unless-stopped
    networks:
    - backend

  myapp-partner:
    container_name: myapp-partner
    build:
      context: .
      dockerfile: Dockerfile-Partner
    restart: unless-stopped
    networks:
    - backend

  myapp-redis:
    container_name: myapp-redis
    restart: always
    image: redis:6.0.5
    networks:
    - backend

networks:
  backend:
    driver: bridge

Если я перенаправляю порт x: y (он же ports config), я могу получить доступ ко всем службам на локальном хосте моего хост-компьютера А также возможно telnet myapp-partner из консоли контейнера myapp. Но когда я просто пытаюсь подключить веб-сокет (ws://myapp-partner:8080/quotes) из работающего приложения Java в контейнере myapp, я получаю ошибку connection refused. Я проверил сеть, все контейнеры успешно подключены к ней, и, как я уже сказал, связь lnet через командную строку прошла успешно.

В чем может быть проблема? (сетевой режим хоста работает, но затем myapp становится недоступным на localhost:1967)

...