Зачем вам Docker?
Если вы считаете, что докер (англ. docker – портовый рабочий) – это тот, кто грузит контейнеры, вы правы по форме, но не по содержанию. В нашем случае Docker – это действительно удобный интерфейс для работы с контейнерами. Но не только. Давайте разбираться, что это такое и с чем его едят.
Docker можно использовать на всех этапах работы с приложениями - при разработке, тестировании, ревью и эксплуатации. По сути, он ускоряет процесс настройки среды для приложения. Мы запаковываем приложение в образ и можем развернуть его, где угодно. То есть, отделить наше приложение от собственно инфраструктуры и – внимание! - одновременно управлять инфраструктурой как приложением.
Главное преимущество Docker – это красивый логотип в виде кита. Шутка. Скорость, конечно, бич всех современных процессов, хоть бизнесовых, хоть технологических. С Docker можно быстрей тестировать, быстрей выкладывать приложения, быстрей запускать и редактировать код.
Какие проблемы решаем с помощью Docker:
- легко и непринужденно передаем продукт клиенту – без отправки кучи файлов, скриптов и инструкций;
- запросто тиражируем, если нужно поднять несколько одинаковых серверов;
- не паримся каждый раз, готовя на новом сервисе одинаковую конфигурацию для продукта, а переиспользуем настройки в Docker.
Docker работает с этими задачами при помощи контейнеризации. Приложение упаковывается в изолированный контейнер, который вы можете развернуть на любой машине. При этом Docker позволяет запустить на одном хосте одновременно несколько контейнеров.
Если сравним Docker и Vagrant, виртуализация в первом существенно дешевле. Потому что Vagrant эмулирует целую операционную систему, а Docker – только один нужный процесс.
Теперь к цифрам. Кроме жирной галочки в графе «саморазвитие», скилл в Docker, как хлеб насущный, необходим DevOps-инженерам. В чуть меньшей степени – системным администраторам и разработчикам.
Смотрим на ключевые навыки DevOps-инженера, которые собрали в статистику Яндекс и аналитическая служба HeadHunter, - это Docker, Linux, Git, Python, Bash.
Если обратимся к hh.ru, в 90% вакансий в сфере DevOps Docker необходим.
Не убедили? Тогда еще цифр.
- По данным отчета Indeed, за 2018 год число вакансий, в которых необходимо знать Docker, увеличилось на 50%. Совсем скоро ждем данных за 2019 год, уверены, спрос только вырос.
- С 2014 до 2019 года доля рабочих мест, где важно знание Docker, выросла на впечатляющие 9538%.
- В публичном репозитории Docker Hub реализовано 5.8 млн приложений.
100 000 сторонних проектов используют Docker. - В 2019 пользователи загрузили 105 млрд Docker контейнеров.
Docker используют более 750 крупнейших международных корпораций, включая ADP, GE, MetLife, PayPal и Societe Generale. - С 2015 года и до сегодняшнего дня доля работающих с Docker клиентов Datadog, сервиса мониторинга облачных сред и приложений, растет на 3-5% в год.
Во всех средах, отслеживаемых Datadog, доля хостов, где работает Docker, растет на 5 % в год.
Чем масштабней инфраструктура, тем больше докеров используется. Цифры ниже – тому подтверждение.
Средний размер развертывания докеров вырос за год на 75%.
Теперь-то убедили, что без Docker вы как без рук? Так что, друзья, гоу учить Docker - и скиллы прокачаете, и прибавку к зарплате получите.