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

Поделиться
HTML-код
  • Опубликовано: 19 июн 2024
  • #русскийайтишник #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
    @andreivoloshin610 3 года назад +113

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

    • @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-vr2tl4rv4r 2 года назад +4

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

  • @irinka_davy
    @irinka_davy 3 года назад +2

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

  • @vinogradishev
    @vinogradishev 2 года назад +1

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

  • @simexlab
    @simexlab 3 года назад +7

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

  • @aelchin2010
    @aelchin2010 3 года назад +3

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

  • @exzot.1110
    @exzot.1110 2 года назад

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

  • @undefined_user36
    @undefined_user36 Год назад

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

  • @nadiiaschmitz2306
    @nadiiaschmitz2306 Год назад

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

  • @munarcymbatov181
    @munarcymbatov181 3 года назад +8

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

  • @user-pu5xs1sj8d
    @user-pu5xs1sj8d 3 года назад +3

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

  • @user-fo1zt8ce9x
    @user-fo1zt8ce9x 2 года назад

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

  • @pfk9025
    @pfk9025 2 года назад

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

  • @ivanstrelka3448
    @ivanstrelka3448 2 года назад +1

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

  • @olegalekseev832
    @olegalekseev832 2 года назад +1

    Спасибо!

  • @georgeshishorin2140
    @georgeshishorin2140 3 года назад +6

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

    • @RussianITGuy
      @RussianITGuy  3 года назад

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

    • @georgeshishorin2140
      @georgeshishorin2140 3 года назад

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

  • @eclipsium_msk
    @eclipsium_msk 3 года назад +13

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

    • @etakoin
      @etakoin 3 года назад

      а я наоборот 0.5

  • @svetlanamazhaykina6918
    @svetlanamazhaykina6918 Год назад

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

  • @alenamitnovizki3857
    @alenamitnovizki3857 2 года назад

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

  • @katerishnay1076
    @katerishnay1076 2 года назад

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

  • @andreykrivoshein3788
    @andreykrivoshein3788 2 года назад

    Cпасибо!

  • @user-qw5gr5bk8u
    @user-qw5gr5bk8u 2 года назад

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

  • @withotsoul7252
    @withotsoul7252 Год назад

    Thanks

  • @arseniyaponomareva6281
    @arseniyaponomareva6281 2 года назад +1

    Спасибо

  • @tadeuskozlovski7286
    @tadeuskozlovski7286 2 года назад

    Спасибо.

  • @samezarus
    @samezarus 3 года назад +2

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

  • @user-wq3ck7if4n
    @user-wq3ck7if4n 2 года назад

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

  • @astral5564
    @astral5564 3 года назад +1

    Хорош!

  • @Hinducoder
    @Hinducoder 3 года назад +1

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

  • @user-shmuser.
    @user-shmuser. 3 года назад +6

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

  • @nurgaleevrf8750
    @nurgaleevrf8750 2 года назад +1

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

  • @bralbral
    @bralbral Год назад

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

  • @maksimsergeevich5939
    @maksimsergeevich5939 2 года назад

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

  • @user-my4nz2jj7f
    @user-my4nz2jj7f 3 года назад +1

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

    • @RussianITGuy
      @RussianITGuy  3 года назад +1

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

  • @Alex-dw3pn
    @Alex-dw3pn 2 года назад +2

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

  • @petr_e
    @petr_e 3 года назад +2

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

  • @comrad93
    @comrad93 3 года назад +3

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

    • @RussianITGuy
      @RussianITGuy  3 года назад +3

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

    • @Softovick
      @Softovick 3 года назад

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

  • @kuatkaimbaev2342
    @kuatkaimbaev2342 2 года назад

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

    • @RussianITGuy
      @RussianITGuy  2 года назад

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

  • @Softovick
    @Softovick 3 года назад

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

    • @RussianITGuy
      @RussianITGuy  3 года назад

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

    • @Softovick
      @Softovick 3 года назад +1

      @@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 ГБ ОЗУ. Небольшая компания на этих ресурсах спокойно может поднять с десяток сервисов. Сэкономив пускай небольшие, но деньги на железе - для начинающих стартапов к примеру это существенно. Другой вопрос, что зачастую люди не считают такие деньги, ведутся на хайповые названия. Это да....

  • @user-gu2sc5lj6g
    @user-gu2sc5lj6g Год назад

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

  • @singlebw4065
    @singlebw4065 3 года назад +1

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

    • @RussianITGuy
      @RussianITGuy  3 года назад +1

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

    • @singlebw4065
      @singlebw4065 3 года назад

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

    • @RussianITGuy
      @RussianITGuy  3 года назад +1

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

    • @singlebw4065
      @singlebw4065 3 года назад

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

  • @sarbasov
    @sarbasov Год назад +1

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

    • @MyPolkin
      @MyPolkin Год назад

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

    • @user-tc8uy4qk5z
      @user-tc8uy4qk5z Год назад

      🤣

  • @dennykolesnikov
    @dennykolesnikov 2 года назад

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

    • @RussianITGuy
      @RussianITGuy  2 года назад +2

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

    • @dennykolesnikov
      @dennykolesnikov 2 года назад

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

  • @janaeismont3683
    @janaeismont3683 2 года назад

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

  • @jetbrain9115
    @jetbrain9115 2 года назад

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

  • @vesh95
    @vesh95 2 года назад +1

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

    • @RussianITGuy
      @RussianITGuy  2 года назад

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

  • @andrewmoryakov7556
    @andrewmoryakov7556 2 года назад

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

  • @pulseclubforzahorizon4412
    @pulseclubforzahorizon4412 2 года назад

    Спасибо !