Как стать автором
Обновить

Комментарии 3

контейнезируются

Э, чо-чо? :-)


Когда приложение представлено в виде нескольких компонентов, микросервисов, то требуется выбрать определённый подход

Во-первых, строго говоря разбивка приложения на несколько контейнеров ничего общего с микросервисной архитектурой не имеет. Ну, разбили монолит на два контейнера и разбили. И получили распределённый монолит.


Хранить образы в отдельных вложенных репозиториях:

Дайте определение вложенного репозитория. Во-вторых, вы тут вносите терминологическую путаницу, которая идёт от самого докера:


  1. Репозиторий — это repository (как git repository)
  2. "Репозиторий" докера — это реестр или регистр. Не знаю как лучше. По-английски — [docker] registry.
  3. Не существует такой вещи как "вложенные репозитории". По сути докер образ определяется двумя ключевыми строковыми значениями: image name и tag. Ссылка на регистри является неотъемлемой частью image name. Либо опускается, если речь идёт о докерхабе. И как пример в том же гитлабе — в один "типа реестр" на проект можно напихать сколько угодно по-разному поименованных образов (создавая "типо иерархическую подструктуру" под головным доменом registry.gitlab.com)
  4. Что хуже — в разной документации TAG'ом называется либо хвостик названия образа (:latest, :v0.1.0, :master), либо все название образа целиком

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

Во-первых, строго говоря разбивка приложения на несколько контейнеров ничего общего с микросервисной архитектурой не имеет. Ну, разбили монолит на два контейнера и разбили. И получили распределённый монолит.

Когда приложение представлено в виде нескольких компонентов, к примеру, микросервисов…

Дайте определение вложенного репозитория

  • Repository — коллекция образов, сгруппированная по имени.
  • Registry — сервис для хранения репозиториев (Docker Hub, GCR, ...).

Большинство registry поддерживает многоуровневую иерархию репозиториев. Термин вложенный репозиторий используется, чтобы подчеркнуть изоляцию группы репозиториев, а не просто возможность хранения образов с многоуровневым именем (REGISTRY/webdev/app/backend).

В GCR используется термин nested repository.

В Azure nested namespaces, но по сути тоже самое.

В случае с Docker Hub многоуровневое именнование образов не поддерживается (и не планируется), поэтому и соответствующего термина нет.

Спасибо за разъяснение.
Ещё один довод в пользу неиспользования Докер Хаба в продакшен.
Предыдущее, что насторожило — когда у них угнали базу паролей.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий