2016-07-02 4 views
0

Я разрабатываю платформу, которая отслеживает электронную почту, сохраняет результаты в базе данных Mongo (через Parse-Server) и отображает результаты в веб-приложении (используя AngularJS).Docker: многократные контейнеры для каждого клиента

В принципе, для каждого клиента я хочу, чтобы SMTP-сервер, Parse Server, MongoDB & - веб-платформа.

Я думал об использовании Docker для большей масштабируемости, и идея состоит в том, чтобы автоматически создавать контейнеры при регистрации пользователя на моем веб-сайте, но я действительно не понимаю, как связать эти контейнеры вместе: web1 | smtp1, подключенный к parse1, подключенному к mongo1 & web2 | smtp2 подключен к parse2, подключенному к mongo2.

В конце концов, я хочу, чтобы клиенты, чтобы получить доступ к веб-приложению через web1.website.com, так что я думаю, я должен также использовать HAproxy ..

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

ответ

0

Использование докеров (в частности, Docker Compose) для соединения контейнеров очень просто. На самом деле это происходит из коробки! Если вы одновременно создаете все свои контейнеры, для вашего «составленного приложения» создается сеть Docker, и все контейнеры могут видеть друг друга.

См. Документацию here.

Каждый контейнер теперь может искать имя хоста web или db и возвращать соответствующий IP-адрес контейнера. Например, код приложения Web может подключаться к URL postgres: // db: 5432 и начать использовать базу данных Postgres.

Смежные вопросы