Рейтинг@Mail.ru
HighLoad++ 2016 завершён. До встречи в 2017!

Профессиональная конференция разработчиков высоконагруженных систем

Москва, СКОЛКОВО,
7 и 8 ноября
Архив
2015
года
Конференция прошла в этом году уже в десятый раз и собрала 2500 участников. Мероприятие направлено на обмен знаниями о технологиях, позволяющих одновременно обслуживать многие тысячи и миллионы пользователей.

Собираем Docker-образы быстро и удобно
DevOps и эксплуатация

Доклад принят в Программу конференции
Флант

Технический директор и соучредитель компании «Флант». 13 лет с Linux, 9 лет эксплуатации, больше 30 highload-проектов. Программирую на C++, PHP, Python и Bash. Люблю C и Ruby. Активно использую Chef и Docker. Архитектор и соавтор: nginx-http-rdns, pam_docker, php_fpm_docker и dapp.

Тезисы

Одним из важных элементов процесса Continuous Delivery, построенного с использованием Docker, является сборка Docker-образов. На первый взгляд задача кажется тривиальной, а синтаксис Dockerfile — простым и понятным.

Но что, если вы используете микросервисную архитектуру и вам необходимо собирать сотни или даже тысячи образов каждый день? А если вам нужно исправить срочный баг на production, готовы ли вы ждать лишние минуты, пока будет произведена сборка?

Даже небольшие команды, не ведущие параллельную разработку десятков проектов, на практике сталкиваются с проблемами, не имеющими очевидных решений.
- Как собирать несколько образов для одного проекта (например, разные образы для frontend и backend)?
- Как уменьшить среднее время сборки до нескольких секунд?
- Как правильно исключить из образа лишнюю информацию, сделав его легким? Например, как исключить из образа nodejs, который требуется для компиляции ассетов? Dev-библиотеки, требующиеся для компиляции приложения на Си++?
- Как вести распределенную сборку, используя при этом общий кэш? Или собирать Docker-образы для разных бранчей одного проекта, корректно используя общий кэш?
- Как переиспользовать код сборки между несколькими проектами?
- Как вести совместную разработку?

В этом докладе я расскажу о том, как мы решили обозначенные проблемы и почему считаем, что существующие возможности Dockerfile (и docker build) плохо подходят для сборки образов для CI/CD.

Чем быстрее и чем эффективнее происходит процесс сборки, тем чаще можно собирать и чаще тестировать, тем быстрее можно выкатывать и тем дольше можно хранить историю.

Технологии виртуализации и контейнеризации
,
Непрерывное развертывание и деплой
,
Непрерывная интеграция

Другие доклады секции
DevOps и эксплуатация

Бронирование билетов
Вы можете забронировать себе билеты уже сейчас — чем раньше Вы это сделаете, тем лучше, ведь цена на билеты постоянно растёт. Бронь вас ни к чему не обязывает, после бронирования у Вас будет пара недель на принятие решения об оплате.
ЗАБРОНИРОВАТЬ БИЛЕТЫ
Остались вопросы?
Спроси по телефону у контактного центра: +7 (495) 646-0768
Или напиши письмо в службу поддержки: support@ontico.ru
Rambler's Top100