Docker и Kubernetes 🐳 / Что такое контейнеры и зачем они нужны?

Ғылым және технология

#русскийайтишник #docker #kubernetes
В 2010-х годах произошла революция в серверной разработке: появились Docker и Kubernetes. В этом видео рассказываю про историю контейнеров, как и почему они появились, и что мы имеем на текущий момент.
Документация по Docker: docs.docker.com/
Документация по Kubernetes: kubernetes.io/ru/docs/home/
Werf: werf.io/
Podman: podman.io/
0:00 Начало
0:32 Виртуальные машины
4:38 Контейнеры
6:00 Docker
8:27 Орекстрация контейнеров
9:08 Kubernetes
9:40 Что имеем на сегодняшний день
10:17 Kubernetes как услуга
11:48 Что стало с Docker?
Текст: Александр Шишенко
Редактор: Анастасия Некрасова

Пікірлер: 68

  • @andreivoloshin610
    @andreivoloshin6103 жыл бұрын

    Благодаря труду и упорству Сэмвел Тарли приобрёл знания, которые даже не снились другим мейстрам Вестероса) И теперь дарит эти знания простому народу. Канал отличный)

  • @rhettkeagan7560

    @rhettkeagan7560

    2 жыл бұрын

    I realize I am kinda off topic but do anyone know a good place to watch new movies online?

  • @user-vr2tl4rv4r
    @user-vr2tl4rv4r2 жыл бұрын

    Ты первый кого я понял)))) просто и понятно! Спасибо!

  • @simexlab
    @simexlab3 жыл бұрын

    Спасибо тебе добрый человек за понятное объяснение

  • @munarcymbatov181
    @munarcymbatov1813 жыл бұрын

    Боюсь что ваш канал будет взорвать весь Ютуб, побольше ждём от вас многих видеосик

  • @irinka_davy
    @irinka_davy3 жыл бұрын

    Очень понятно! Спасибо вам

  • @aelchin2010
    @aelchin20102 жыл бұрын

    Спасибо за труд, продолжай!

  • @vinogradishev
    @vinogradishev2 жыл бұрын

    Очень понятно и доходчиво, спасибо Вам.

  • @exzot.1110
    @exzot.11102 жыл бұрын

    Очень понятно все объяснил, спасибо!

  • @user-pu5xs1sj8d
    @user-pu5xs1sj8d3 жыл бұрын

    Это подписка, однозначно !

  • @georgeshishorin2140
    @georgeshishorin21403 жыл бұрын

    Топ! Ждем продолжения :)

  • @RussianITGuy

    @RussianITGuy

    3 жыл бұрын

    Скоро будет про werf. Это очень удобная тулза, правда пока не очень популярная.

  • @georgeshishorin2140

    @georgeshishorin2140

    3 жыл бұрын

    @@RussianITGuy, да надо будет посмотреть.

  • @olegalekseev832
    @olegalekseev8322 жыл бұрын

    Спасибо!

  • @ivanstrelka3448
    @ivanstrelka34482 жыл бұрын

    От души спасибо

  • @pfk9025
    @pfk90252 жыл бұрын

    Круто объяснил, спасибо!

  • @alenamitnovizki3857
    @alenamitnovizki38572 жыл бұрын

    Понятно объяснил! 👏👏👏🏆

  • @eclipsium_msk
    @eclipsium_msk3 жыл бұрын

    Чел, ты крутой! Подписчиков только мало :/ PS: смотрю на скорости 1.5 :D

  • @etakaetaka6729

    @etakaetaka6729

    2 жыл бұрын

    а я наоборот 0.5

  • @nadiiaschmitz2306
    @nadiiaschmitz2306 Жыл бұрын

    Отличное видео, огромное спасибо!

  • @user-fo1zt8ce9x
    @user-fo1zt8ce9x2 жыл бұрын

    Спасибо, очень приятно слушать

  • @katerishnay1076
    @katerishnay10762 жыл бұрын

    Спасибо большое)

  • @arseniyaponomareva6281
    @arseniyaponomareva62812 жыл бұрын

    Спасибо

  • @andreykrivoshein3788
    @andreykrivoshein3788 Жыл бұрын

    Cпасибо!

  • @tadeuskozlovski7286
    @tadeuskozlovski72862 жыл бұрын

    Спасибо.

  • @svetlanamazhaykina6918
    @svetlanamazhaykina6918 Жыл бұрын

    Спасибо за Ваш труд! Коммент в поддержку канала

  • @user-qw5gr5bk8u
    @user-qw5gr5bk8u2 жыл бұрын

    Большой просветительский лайк!

  • @undefined_user36
    @undefined_user36 Жыл бұрын

    Спасиба братишка все четко

  • @astral5564
    @astral55643 жыл бұрын

    Хорош!

  • @user-wq3ck7if4n
    @user-wq3ck7if4n2 жыл бұрын

    спасибо чувак)))

  • @samezarus
    @samezarus2 жыл бұрын

    Брат, братан, братишка. Подписался =)

  • @withotsoul7252
    @withotsoul7252 Жыл бұрын

    Thanks

  • @Hinducoder
    @Hinducoder2 жыл бұрын

    Чувак, не забрасывай канал, подписоты мало, но всё будет.

  • @user-shmuser.
    @user-shmuser.3 жыл бұрын

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

  • @maksimsergeevich5939
    @maksimsergeevich59392 жыл бұрын

    В VDS/VPS ресурсы которые указаны в тарифном плане должны быть гарантированы и не делятся с "соседями"?

  • @nurgaleevrf8750
    @nurgaleevrf87502 жыл бұрын

    это очень крутая программа)))

  • @bralbral
    @bralbral Жыл бұрын

    Привет от набора 2011 года :)

  • @user-gu2sc5lj6g
    @user-gu2sc5lj6g Жыл бұрын

    А где обещанное видео про kubernetes?

  • @user-my4nz2jj7f
    @user-my4nz2jj7f3 жыл бұрын

    Из вашего видео мне стало более понятно, как работает хостинг и что такое VDS. Ну и, конечно, docker. Спасибо. А что такое Shared Hosting? То же самое - отдельная виртуалка со своими ресурсами? Только администрирует ее не пользователь, а владелец хостинга?

  • @RussianITGuy

    @RussianITGuy

    3 жыл бұрын

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

  • @Alex-dw3pn
    @Alex-dw3pn Жыл бұрын

    как приятно, когда человек умеет объяснять

  • @comrad93
    @comrad933 жыл бұрын

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

  • @RussianITGuy

    @RussianITGuy

    3 жыл бұрын

    Кубер удобен, когда планируется high-availability. А это практически всегда так, когда проект направлен на получение денег и должен быть всегда доступен. Для этого в нём есть все нужные инструменты. Мой rule-of-thumb: три машины -- уже можно думать о кубернетес. Кубер в установленном виде сам по себе немаленький, поэтому для личных проектов с одним сервером он будет великоват. Тут можно либо пробовать k3s (уменьшенный и урезанный кубер), либо просто использовать docker-compose. Либо, воспользоваться провайдером кубернетеса, который не берет отдельную плату за содержание control plane, например, DigitalOcean.

  • @Softovick

    @Softovick

    3 жыл бұрын

    Для личных проектов просто попробуйте Docker Swarm. k8s действительно громоздкий. И альтернативы тоже не очень то легковесные, как тот k3s. Все равно жрут так ресурсы, что на их месте вполне можно пару десятков сервисов запустить своих.

  • @petr_e
    @petr_e3 жыл бұрын

    Хороший выпуск! Мне кажется, вставки в формате скринкаста с комментариями могли бы быть интересны

  • @kuatkaimbaev2342
    @kuatkaimbaev23422 жыл бұрын

    Спасибо за ролик. В процессе просмотра у меня вопрос появился, можно ли Windows server core запихнуть в контейнер? Из всех современных и поддерживаемых версий windows на данный момент - это единственный, кто использует меньше всего ресурсов. Думаю, что с точки зрения возможностей он может превзойти nix системы

  • @RussianITGuy

    @RussianITGuy

    2 жыл бұрын

    Винду можно запихнуть в контейнер, только этот контейнер будет работать только на Винде под hyper-v. На линуксах не запустится.

  • @Softovick
    @Softovick3 жыл бұрын

    Так есть же оркестрация в Docker - называется Swarm. И доступен из коробки, настраивается гораааааздо проще, чем K8S, а уже ресурсов потребляет на порядок меньше. И на одной ноде работает, потом просто подключаются еще ноды по мере масштабирования. И развивать его будут, хотя конечно он поменьше функций предоставляет, чем кубернетес. Кто тут спрашивал про оркестрацию, вот вполне себе альтернатива для небольших проектов (где-то видел рекомендацию до 100 нод)

  • @RussianITGuy

    @RussianITGuy

    3 жыл бұрын

    Docker Swarm - хорошая штука, если разворачивать её на двух-трёх машинках, это факт. Но насчёт того, будут ли развивать - большой вопрос. Сейчас всё внимание больших компаний (членов CNCF) приковано к Kubernetes, и, в меньшей степени, к Nomad (за которыми стоит Hashicorp). Swarm'ом занимвются, по факту, только разработчики самого Docker. И ещё Swarm несколько бедноват по возможностям: нет аналога Ingress и LoadBalancer, к примеру.

  • @Softovick

    @Softovick

    3 жыл бұрын

    @@RussianITGuy И да и нет. На самом деле развивается Swarm не просто так. Они же хотели от него отказаться, но бизнес настаивал. Так что да, крупных компаний за ним нет, но тем не менее задачи бизнеса он видимо решает, бизнеса достаточно денежного, чтобы повлиять на решение разработчиков продолжить развитие. Насчет масштабности применения такой вопрос, спорный... Например по словам девопса из MailRu, которые активно занимается внедрением и развитием Kubernetes, режим Docker Swarm вполне подойдет компаниям, где сотня-две сервисов. Да, если их больше или очень много серверов и если компания способна обеспечить достаточно ресурсов, в том числе человеческий для поддержки k8s-инфраструктуры - то Kubernetes выигрывают по функциональности и гибкости. Аналоги некоторых функций на самом деле есть или можно поднять простыми действиями. К примеру Secrets/Configs есть, Healthchecks есть, ресурсы сервисов и контейнеров можно ограничить, распределять по нодам умеет. Анонсировали появление в скором времени выполнения сервисов по расписанию (CronJob типа). В остальном... Тот же Ingress в K8S ведь не более чем особо настроенный контейнер с Nginx, с его заменой справляются на ура Traefik, а поднять его что там что там вообще не проблема. И аналогичные контейнеры с Nginx я тоже видел, типа Nginx_Proxy. Я на самом деле не говорю, что Docker Swarm это замена, они и сами это не позиционируют так. Но как минимум упоминания об этом оркестраторе он уже достоин. А в некоторых случаях другие системы просто будут избыточны. Банальный пример, поднять даже облегченную версию Kubernetes под названием k3s - отьедает минимум 500МБ ОЗУ на менеджер ноде. А полноценный k8s вообще требует в единоличное владение 2 ядра и 4 ГБ ОЗУ. Небольшая компания на этих ресурсах спокойно может поднять с десяток сервисов. Сэкономив пускай небольшие, но деньги на железе - для начинающих стартапов к примеру это существенно. Другой вопрос, что зачастую люди не считают такие деньги, ведутся на хайповые названия. Это да....

  • @singlebw4065
    @singlebw40653 жыл бұрын

    Мужик. рассказываешь грамотно. Про nginx что-нибудь в связке с nodejs рассказать и показать можешь? Я вот что-то не совсем догоняю. Нет полной картины. Говорят что nodejs однопоточная. Что это значит? Как я понимаю при обращении к ней она прогоняет задачи через event loop. Правильно ли я понимаю если 100 человек одновременно к ней обратятся, то они встанут в очередь ?

  • @RussianITGuy

    @RussianITGuy

    3 жыл бұрын

    Да, запросы в nodejs идут через event loop. Но большинство тормозов в веб-сервисах из-за обращений к базе и других задач ввода-вывода. Пока обрабатывается ввод-вывод, nodejs будет переключаться на обработку следующих клиентов и так далее.

  • @singlebw4065

    @singlebw4065

    3 жыл бұрын

    @@RussianITGuy А можно в будущем продемонстрировать как грамотно делать и почему не стоит делать иначе с nodejs?

  • @RussianITGuy

    @RussianITGuy

    3 жыл бұрын

    ​@@singlebw4065 Не очень понимаю вопрос :) nodejs разработан в асинхронной парадигме, поэтому не стоит делать блокирующие вызовы в обработчиках запросов клиентов. Вообще, тема "асинхронность vs многопоточность" на канале планируется, потому что вопрос частый и сейчас, когда все сервисы делают асинхронными, актуальный.

  • @singlebw4065

    @singlebw4065

    3 жыл бұрын

    @@RussianITGuy Просто вроде что-то ковыряю, изучаю, вот докер подучил пихаю туда тестовый nodejs mysql, phpmyadmin всë круто, но давно знаю что используют nginx с nodejs вот изучаю его и тож пихаю в докер. Ну хз. я могу как напрямую к nodejs обратиться, так через nginx proxy_pass в чëм прикол пока не понимаю. nodejs на express быстро выплëвывает статику говорят nginx тоже. Про fastcgi сервера тож чëт пока не понял. Примера везде суют с apache блин аж бесит)) Время идëт я конечно его выучу, но вот грамотно им пользоваться уже надо искать кто покажет боевое использование и обоснавал почему именно так.

  • @janaeismont3683
    @janaeismont36832 жыл бұрын

    Хорошо, без лишнего бла бла.

  • @deniskolesnikov3697
    @deniskolesnikov36972 жыл бұрын

    Какая сейчас цепочка получается: разработчик у себя локально разворачивает Докер-контейнеры, но для чего? Если нет возможности их же потом отправить в Кубер, из-за отсутствия поддержки?

  • @RussianITGuy

    @RussianITGuy

    2 жыл бұрын

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

  • @deniskolesnikov3697

    @deniskolesnikov3697

    2 жыл бұрын

    @@RussianITGuy просто, если правильно понял, раньше эта повторяемость сохранялась и при отправке (или как правильно сказать) в Кубер, теперь же на этом этапе вновь появилось место для конфликта при развертывании?

  • @sarbasov
    @sarbasov Жыл бұрын

    5:21 а я думаю, что основное отличие контейнеров от виртуальных машин, это то, что они не способны сохранять свое состояние. Пишешь все в базу данных, а после перезагрузки все данные пропадают. Смысл всего сводится к нулю из-за этого. У виртуальных машин такой проблемы нет.

  • @MyPolkin

    @MyPolkin

    Жыл бұрын

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

  • @user-tc8uy4qk5z

    @user-tc8uy4qk5z

    Жыл бұрын

    🤣

  • @jetbrain9115
    @jetbrain91152 жыл бұрын

    1 На ОС 2 виртуальные машины 3 контейнеры

  • @vesh95
    @vesh952 жыл бұрын

    Недавно увидал Сбер клауд

  • @RussianITGuy

    @RussianITGuy

    2 жыл бұрын

    Ага, у них на сайте есть managed kubernetes, но от только для юриков (требует ИНН юрлица)

  • @andrewmoryakov7556
    @andrewmoryakov75562 жыл бұрын

    Вот так и не понял, что же такое образ

  • @pulseclubforzahorizon4412
    @pulseclubforzahorizon4412 Жыл бұрын

    Спасибо !

Келесі