Как совместить несколько приложений с Docker?

387
Davio

Дана следующая настройка приложений:

  • Приложение A: Docker-compose с изображением PostgreSQL и пользовательским образом приложения, использующим этот образ PostgreSQL
  • Приложение B: Docker-compose с изображением PostgreSQL и пользовательским образом приложения, использующим этот образ PostgreSQL

Приложение B зависит от приложения A, но приложение A может работать и тестироваться изолированно без приложения B (а иногда это желательно).

Есть ли способ объединить эти разные приложения в один Docker? Я читал о стеках и связках, но все это немного загадочно для меня.

0
Это будет зависеть от того, что вы на самом деле хотите сделать. Вы всегда можете сделать это одно изображение, которое не то, что вы хотите сделать. То, что вы, возможно, просто ищете, это [compose] (https://docs.docker.com/compose/) из того, что я знаю о докере. Seth 6 лет назад 0
@Seth Я думал, что compose использовался для создания одного приложения, состоящего из разных сервисов: таких как веб-интерфейс, серверная часть и база данных; здесь у меня есть различные (автономные) приложения, которые взаимодействуют друг с другом; вроде как микросервисы. Davio 6 лет назад 0
Поскольку у вас есть явная зависимость, это не просто сервисы, которые «взаимодействуют друг с другом». Создавайте компоновку для приложения B. Вы всегда можете просто извлечь отдельное изображение для A. Стеки и связки фактически основаны на compose, как вы можете видеть [в документации] (https://docs.docker.com/compose/bundles/ ). Seth 6 лет назад 0

0 ответов на вопрос

Похожие вопросы