LINUX.ORG.RU

Docker: опыт посторения инфраструктуры с нуля

 , , , ,


1

5

Парни, нужен ваш опыт в построении инфраструктуры на docker c нуля.
Чем лучше пользоваться, чем не пользоваться. Имеет ли смысл использовать docker cloud/hub или стоит поднимать локальный хаб на амазоне. Есть ли вменяемая замена docker cloud для такой же простой и прозрачной процедуры деплоймента и хранения пропертей stack который он предоставляет.
очень нужны ваши советы, парни. заранее спасибо


Ответ на: комментарий от cheerfulboy

а как вы его используете? можете поэтапно описать инфраструктуру?
например:
1. на амазоноской ноде поднят дженкинск, которые создает контэйнер, потом через ansible его конфигурит (устанавливает внутрь сервис) и т.д.
2. снимает с него image и заливает на docker cloud hub/на наш локальный хаб (почему мы использыем именно его как хранилище image)
3. затем идем в docker cloud, в котором уже лежат все наши images создаем там stack (описание images и их сетевые настройки взаимодействия) для нового тестового(прод) релиза.
4. нажимаем кнопку деплой - вуаля! все встало и работает.
5. как реализован процесс ночных сборок с прогоном тестов на них
6. что используется для мониторинга(просмотра на UI - статусы) таких сборок?

вот список вопросов на которые хотелось бы получить ответ для начала. опишете как работает ваша система и почему вы решили сделать именно так

rusich
() автор топика
Последнее исправление: rusich (всего исправлений: 1)
Ответ на: комментарий от rusich

С самого начала у меня была какая-то тактика и я ее придерживался

Все сильно зависит от особенностей каждого проекта..

expelled ★★
()
Ответ на: комментарий от expelled

у нас обычные java микросервисы на spring boot. собирается в gradle. каждый сервис пакуется (будет паковаться) в отдельный контэйнер. осталось построить под это дело инфраструктуру. в предыдущем проекте мы использовали amazon для этого и в этом планируем так же.
проблема в том что ни у кого из нас нет экспертизы в docker который мы решили юзать. меня посадили разбираться :)
я увидел такое приятные вещи как docker cloud & hub, которые позволяют сделать интеграцию с amazon ec2 нодами. буду пробовать все это подружить, но поскольку я не разу не девопс, хотелось бы услышать примеры удачной работающей и инфраструктуры на этом стэке технологий

зы не верю что никто их не использует тут :)

rusich
() автор топика
Последнее исправление: rusich (всего исправлений: 1)
Ответ на: комментарий от rusich

дженкинск, которые создает контэйнер, потом через ansible его конфигурит (устанавливает внутрь сервис) и т.д.

гм, ты что-то делаешь не так, для этого есть докерфайлы

Deleted
()
Ответ на: комментарий от Deleted

ну блин, говорю ж не знаю пока как правильно делать. читаю доки докера. вот нашел вроде норм примерчик: spring-boot-with-docker-example

rusich
() автор топика
Ответ на: комментарий от rusich
  1. Я пушу коммиты в git-репозиторий на битбакет
  2. На битбакете срабатывает хук, который дает сигнал drone собирать docker-образ и запускать тесты с его использованием
  3. Если все происходит хорошо, образ отправляется в локальный registry
  4. Я в ручном режиме запускаю плэйбук ansible, который деплоит образ на сервера
cheerfulboy
()
Ответ на: комментарий от cheerfulboy

о, то что нужно. спс
правда насколько я понял у вас нету никакого

docker-compose.yml
файла? или все ваше приложение ложится в один имэйдж?

rusich
() автор топика
Последнее исправление: rusich (всего исправлений: 1)

- Хочу docker!
- Зачем?
- Не знаю... Но хочу docker!

Для чего docker нужен, какие задачи и проблемы он у вас будет решать?

zunkree
()
Ответ на: комментарий от zunkree

мы предполагаем что докер облегчит нам процедуру развертки и настройки dev/test/prod environment.
импонирует идея построения environment из готовых и уже оттестированых блоков

rusich
() автор топика
Ответ на: комментарий от rusich

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

anonymous
()
Ответ на: комментарий от anonymous

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

rusich
() автор топика
Ответ на: комментарий от expelled

знаю про него. хорошая вещь когда тяжело настроить среду выполнения. например в python или ruby. в java у нас такой проблемы пока нет. потому что из всех зависимостей только java и есть. gradle собирает все остальное. потому и вагранг не нужен. а инфраструктуру типа db, memcached, solr и т.п. можно развернуть в контейнерах

rusich
() автор топика
Ответ на: комментарий от anonymous

уже работали. знаем как пользоваться. проще читается код в билд файле из-за отсутсвия вырвиглазного xml

rusich
() автор топика

Чем лучше пользоваться, чем не пользоваться.

docker

Ну ты понел :)

slackwarrior ★★★★★
()
Ответ на: комментарий от rusich

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

Докер ничего не изменит.

ya-betmen ★★★★★
()
Ответ на: комментарий от ya-betmen

Докер, кстати, имеет и недостатки. Нас, к примеру, напрягает пересобирать image и по новой запускать контейнер на проде, даже если тупо обновил одну js либу. С тем же git в продакшене и то проще и быстрее. Но не на всех проектах. Комплексные проекты лучше на докере выкатывать, сайты SPA типа лэндинг страниц - лучше не заморачиваться докером, а юзать git + ansible.

menangen ★★★★★
()
Ответ на: комментарий от alfss

не, пасиба. время есть, инет есть. всё найду и так :)

rusich
() автор топика
Ответ на: комментарий от rusich

Может стоит понять что ломалось? Плюс почитать про проблемы докера (или посмотреть доклады от его пользователей, могу посоветовать доклады с еще свежего РИТа, там целая секция была вокруг докера).

По моему опыту деплой на java-окружение прекрасно автоматизируется при помощи Ansible, каких-то профитов для себя при переходе на докер я не вижу, может вы движетесь не в ту сторону?

alozovskoy ★★★★★
()
Ответ на: комментарий от alozovskoy

По моему опыту деплой на java-окружение прекрасно автоматизируется при помощи Ansible, каких-то профитов для себя при переходе на докер я не вижу,

а они есть 8)

особливо если целевой сервер не твой

Deleted
()
Ответ на: комментарий от Deleted

Охотно верю, тем более что я совсем не претендую на звание гуру (и подписался на тред чтоб почитать истории успеха).

alozovskoy ★★★★★
()
Ответ на: комментарий от alozovskoy

тс пока дальше вопроса «аа что делать??» не продвинулся, потому врядли тут будет что-то интересное

зы. до кучи: Вот делаем систему управления жизненным циклом образов для docker и есть куча вопросов.

Deleted
()
Последнее исправление: Deleted (всего исправлений: 1)
Ответ на: комментарий от Deleted

ненене, новости будут :) нужно просто пока понять что и как юзать. так что результат я напишу

зы. до кучи: Вот делаем систему управления жизненным циклом образов для docker и есть куча вопросов.

спс, почитаю

rusich
() автор топика
Последнее исправление: rusich (всего исправлений: 2)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.