Может ли контейнерное приложение консоли Windows добавить сообщение на хост MSMQ - PullRequest
0 голосов
/ 19 февраля 2019

Контейнеры (Docker и т. Д.) Потрясающие, и я рад возможности, которые он может предложить.Мое приложение использует следующее (все установлено на хост-компьютере Windows)

  1. Sql Server
  2. MSMQ
  3. Конечные точки нескольких консольных приложений: для чтения и записи в MSMQ
  4. Веб-сайт

Теперь я планирую контейнировать следующее (контейнеры Windows)

  1. Несколько консольных приложений
  2. Веб-сайт

Я в данный момент не собираюсь локализовать MSMQ и SQL Server , и они будут установлены на хост-компьютере, как и раньше.

Я могу создавать образы и запускатьэто как контейнеры с использованием Docker Engine.Но все они работают в изоляции.Они должны взаимодействовать с хост-машиной.Я не могу понять это.

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

  1. Могут ли контейнеризованные конечные точки(консольные приложения в моем случае) добавлять сообщения в HOST MSMQ?
  2. Могут ли конечные точки контейнерных консольных приложений читать сообщения из HOST MSMQ?
  3. Я прочитал, что контейнерные приложения (в моем случае консоль) могутчтение и запись на сервер SQL, установленный на хост-компьютере, это правда, верно?

Я могу создавать образы, запускать их как контейнеры, но с помощью этих сшивающих частей я не могу это понять икто-то может мне помочь.

Спасибо

1 Ответ

0 голосов
/ 19 февраля 2019

да, да и да ... они могут общаться ...

Сложность состоит в том, чтобы понять, что ваши приложения, работающие внутри контейнера на вашем хосте, выглядят как приложения на вашем хосте.Это означает, что если вы запустите службу на порту 5555 в вашем контейнере, вы можете получить к нему доступ, вызвав localhost: 5555 (если 5555 не занято на хосте, в противном случае вам нужно установить флаг -p при запуске контейнера).

Но при работе внутри контейнера ... ваш хост рассматривается как компьютер в сети, поэтому вам необходимо получить к нему доступ через общий сетевой IP-адрес.

Я не говорю, что это единственный способ, это только то, как я знаю, и это работает!

Редактировать: Я случайно обнаружил, что эта статья может оказаться полезной, а не моя. Работа с MSMQ в контейнерах Docker Windows

...