TCP-соединение от образа докера к c # - PullRequest
0 голосов
/ 03 июля 2019

Прежде всего, я получил 2 консольных приложения.Один должен быть клиентом, а другой - слушателем.

Клиент - это программа, которая находится в контейнере в Docker.Другой, который я использую на своем ПК.

Теперь проблема в том, что я пытаюсь подключить клиент к своему слушателю.Если я тестирую его на своем локальном компьютере, он работает просто отлично, но когда я собираю его как образ и запускаю, он не подключается.

Клиент:

TcpClient tcpClient;
do
{
    tcpClient = new TcpClient("IP", PORT);
} while (!tcpClient.Connected);

Слушатель:

var tcpListener = new TcpListener(PORT);
var tcpClient = tcpListener.AcceptTcpClient();

Как я уже говорил ранее, локально это работает, но когда помещено в образ Docker, оно не будет.

Dockerfile

FROM mcr.microsoft.com/dotnet/core/aspnet
WORKDIR /app
COPY . .
ENTRYPOINT ["dotnet", "tcpconnector.dll"]

Команды Docker:

docker build -t tcpconnector .

docker run -d --name connector tcpconnector

Контейнер запускается и работает отлично, но не подключается к моему слушателю.Если я меняю направление и слушатель находится внутри изображения, я выставляю порт, на котором слушаю, вот так:

docker run -d -p PORT --name listener IMAGE

Это работает !!Но я не могу заставить его работать наоборот.

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