Docker полный курс от А до Я | От новичка до мидла с примерами на Python [Junior]

Поділитися
Вставка
  • Опубліковано 25 лис 2024

КОМЕНТАРІ • 87

  • @avelo895
    @avelo895 8 місяців тому +1

    Потрясающе. Очень полезный урок. Спасибо Вам огромное!

  • @alexey6680
    @alexey6680 8 місяців тому +6

    Обязательно посмотрю попозже, спасибо)

  • @gelezko
    @gelezko 5 місяців тому

    посмотрел целиком. какраз ознакамливаюсь с докером. спасибо за примеры! продолжайте и успехов вам!

  • @Nikita-baturin
    @Nikita-baturin 8 місяців тому +2

    Спасибо! Мне как IT-аналитику, достаточно полезно.

  • @Im_Seth
    @Im_Seth 8 місяців тому

    Как для джуна бекендера на пайтон, ваш канал это просто клад, продолжайте пожалуйста

  • @АлександрКущ-в9у
    @АлександрКущ-в9у 8 місяців тому +2

    Спасибо за толковое объяснение, очень помогло структурировать имеющиеся базовые знания.

  • @swastest
    @swastest 8 місяців тому +1

    досмотрела до самого конца на одном дыхании и с практикой! автор молодец)))

  • @ОлегВоронин-н3о
    @ОлегВоронин-н3о 8 місяців тому

    Отличный курс. Автору огромное спасибо!

  • @-7-db5js
    @-7-db5js 7 місяців тому

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

  • @osada96
    @osada96 6 місяців тому +2

    Видео отличное, спасибо! Все доступно для понимания, особенно если ранее у слушателя были уже базовые понимания докера.
    Два замечания:
    1) Уже слишком высокое разрешение записи экрана. На 13'' ноутбуке очень плохо видно данные в PyCharm и др. местах.
    2) Нужно отключить все звуковые уведомления пока идет запись. Сначала я думал, что это мне периодически алерты посылает Телеграм ))). К тому же это отвлекает от курса.
    Хотелось бы увидеть в будущем уроки по Докеру более продвинутого уровня также.

  • @versuta
    @versuta 8 місяців тому +17

    так вот куда пропал Брендан Фрейзер с телеэкранов

    • @schism.
      @schism. 8 місяців тому

      Неплохо 😂😂

  • @sinsteps
    @sinsteps 8 місяців тому +1

    Не искал, зашёл по предложению Ютуб. За материал спасибо!

  • @dmitriikliukin5773
    @dmitriikliukin5773 7 місяців тому

    Спасибо, досмотрел до конца за несколько раз. Всё по полочкам

  • @baldman6804
    @baldman6804 8 місяців тому

    О это полезная тема, уроков много, но не везде понятны нюансы, посмотрим, что тут

  • @АнтонКородян
    @АнтонКородян 8 місяців тому +1

    Спасибо вам огромное за такой большой и качественный материал, очень много что прояснил для себя

  • @User_5661
    @User_5661 4 місяці тому +1

    Благодарю за урок!

  • @alexeymatveev9031
    @alexeymatveev9031 8 місяців тому

    Сохранил, смотрю по 10 минут спасибо

  • @hetvildigor
    @hetvildigor 8 місяців тому

    Спасибо тебе огромное!!! Видео огонь!!! Очень полезно. Лично мне помогло.

  • @hsqlk
    @hsqlk 8 місяців тому +2

    Очень круто!
    Ждем вторую часть
    P. S. А что за автодополнения кода: copilot, tabinue или что-то другое (интересный плагин на pycharm) ?

  • @СергейКапран-я7п
    @СергейКапран-я7п 8 місяців тому

    Фух, досмотрел. Самое интересное последние полчаса. Автор - всё классно, у Вас очень хороший и большой монитор. Видео на ноутбуке с 15 мало. В качестве пожелания - можно покрупнее в следующий раз. Лайк, подписка. Жду ещё! Спасибо!

  • @sergeyf4256
    @sergeyf4256 8 місяців тому

    Крутой видос, спасибо за труд очень полезно и достаточно обширно

  • @DinisAkulov
    @DinisAkulov 6 місяців тому

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

  • @whosane9923
    @whosane9923 8 місяців тому

    Отлично, как раз хочу закрыть гештальт 😂 от души 🤟

  • @alexanderpavlovets7361
    @alexanderpavlovets7361 8 місяців тому

    Спасибо! Видео очень интересное! Было бы очень интересно, если бы вы показали как использовать debug в IDE, если проект (к примеру на FastAPI) запускается локально через docker-compose.

  • @СамирАбасов
    @СамирАбасов 8 місяців тому +1

    Подскажите, а как можно реализовать следующий механизм. 1. Я пушу изменения в гитхаб 2. Далее автоматические собирается новый докер образ и разворачивается новый контейнер на моём vps. Подобный механизм есть в vercel, любые изменения автоматически публикуются и через пару минут отображаются на сайте, только у версаля есть минусы, что он работает только с фронтом.

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      В глобальном смысле этап 1 аналогичный (но строго желательно там еще прокрутить тесты и линтеры, что все ок), это часть CI, а дальше вступает часть CD
      У нас это реализовано через скрипты, которые на сервере накатывают миграции, обновляют образы и тд.
      Функционал про который пишите можно сделать через watchtower (отдельный контейнер, который обновляет образы, если увидел что появился новый образ вашего приложения)

  • @gostig
    @gostig 8 місяців тому

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

  • @СамирАбасов
    @СамирАбасов 8 місяців тому

    Спасибо, всё качественно!

  • @alvin-i6z
    @alvin-i6z 8 місяців тому

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

  • @simpleuser4650
    @simpleuser4650 8 місяців тому

    спасибо за простое и понятное объяснение ! :)

  • @Maksim_Ikryanov
    @Maksim_Ikryanov 8 місяців тому

    Огонь! 🔥🔥🔥

  • @aston585
    @aston585 8 місяців тому

    Красава! Спасибо!

  • @muhlymak
    @muhlymak 8 місяців тому +2

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

  • @СамирАбасов
    @СамирАбасов 8 місяців тому

    Ну и раз мы разобрали docker было бы неплохо узнать как его используются на практике. Т.е. я так полагаю его в одиночку не используют? как следить за его состоянием? на сколько загружен и так далее

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      У нас прод крутится через docker compose, который рассмотрен в ролике
      Мониторинг проходит на уровне сервера, где это крутится + приложения, но в двух приложениях не ответить

  • @whosane9923
    @whosane9923 8 місяців тому

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

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому +1

      Причем это Dji mic, но когда записываю на мак, каждый раз новые приколы, условно у меня микрофон на камере, в первой половине и видео и второй один и тот же

    • @whosane9923
      @whosane9923 8 місяців тому

      @@nikolaypavlin да вот частая история, смотрю людей , отличный звук . А иногда проблемы возникают. У вас не критично, просто у мобильных устройств такие себе динамики))) Я забрал у тв саундбар и поставил на пк))) чтобы четко вас слышать)))

  • @danya22__
    @danya22__ 8 місяців тому

    Добрый день, спасибо вам за такую, большую проделанную работу, хотел бы узнать достаточно ли этих знаний(которые упомянуты в видео) что бы пройти собес на джуна, берем только вопросы по докеру? или что то, по сложнее нужно доучить?

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Если есть адекватное понимание, что такое докерфайл, как он работает и практический опыт работы с компоузом, то этого хватит на мидла (говорю про разработчика, не девопса)

  • @GrafMKristo
    @GrafMKristo 8 місяців тому

    Отличный курс! Молодец!
    ENTRYPOINT vs. CMD - ваще непонятное объяснение.
    Обратка для улучшения следующего видео:
    1. Во время записи увеличить размер шрифта там, где можно.
    2. Выключить звук ОС, мессенджеров и т.п.
    3. Время не тянуть. Повествование желательно чёткое, краткое, без воды, по заранее подготовленным материалам и примерам.
    4. Монтаж. Вырезать нещадно паузы, загрузки, поиски и другие убийцы времени.
    5. Итоги за слушателей не подводить - это никому не интересно.

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Во всем согласен, будем итеративно улучшать, но не с 5 пунктом, закрепление результатов важная часть обучения, так идет закрепление нейронных связей и ассоциативная связь между материалом и итогом

  • @whale5219
    @whale5219 8 місяців тому

    Вроде в docker-compose явно указывать networks не обязательно, сеть будет создана по-умолчанию.

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Да, уточнил, действительно так, но всегда в явном виде прописываю

  • @максимгусев-ч6ю
    @максимгусев-ч6ю 8 місяців тому

    Большое спасибо за видео! Смотрел определенные фрагменты и закрыл многие свои пробелы. Может кто-то подсказать, в 2:11:06 так как мы убрали port из docker-compose, какой порт нужно поставить в этом файле строкой ниже (очень желательно обоснование для понимания происходящего)? В таком случае в dockerFile postgres не нужно писать EXPOSE 5432?

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому +1

      Уверен, что правильный таймкод поставил?
      Отвечу по контексту вопроса, а не видео
      Директива ports прокидывает порт докер контейнера на хвостовую машину, например, «5432:5432» сделает доступным на localhost:5432 порт 5432 контейнера
      EXPOSE в docker file подсказывает, что поднятый сервис будет доступен по такому порту
      Контейнеры между собой могут общаться по названию сервиса, как в примере postgres/ (или любое другое название сервиса, соотвественно и в другой докер будем стучаться)
      Порт при этом менять не надо

    • @максимгусев-ч6ю
      @максимгусев-ч6ю 8 місяців тому

      @@nikolaypavlin 2:11:05 14 14 строка DB_PORT . Просто мы как будто 5432 убрали из docker-compose, его нигде нет, получается эту переменную можно убрать?

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому +1

      Повторюсь, что нет
      Дериктива ports позволяет пробросить порт на Локалхлст и ничего больше, т.е. она не влияет на запущенный в докере сервис (в данном случае посгрес), она как была в контейнере на 5432 так и осталась
      В настройках прописано, как к пострес поддаваться и мы указываем порт на котором будет ожидаться сервис, он остается 5432 (просто адрес сервиса другой, порт тот же)

  • @IndianMax03
    @IndianMax03 6 місяців тому

    Привет, Николай, я воин: просмотрел ролик с нулевой секунды вплоть до 8296-ой (число-то не такое уж и большое)! Прекрасно объясняешь, я как студент впитал очень и очень много, хотя много чего знал изначально! Завтра буду разворачивать postgres на двух узлах в режиме горячего резерва, верю, что у меня все получится =)
    Из плюсов -- качественная картинка, звук и, конечно же, объяснения
    Из минусов -- периодически в начале не видны команды в терминале, в конце почему-то периодически картинка отставала, некоторые неудачные дубли не вырезаны (но это ничто по сравнению с проделанной тобой работой)
    Из пожеланий/идей для следующих видео -- подробно раскрыть тему вольюмов (про именованые вроде как недорассказал), раскрыть настройку сети в докере (compose), ну и очень бы хотелось от тебя как от опытного человека услышать best practices по применению (например, я недавно узнал, что подключение к контейнеру через remote ssh - не самая лучшая идея ну и что-то в таком духе, чтобы явно дать понять область допустимых значений технологии)
    Еще раз огрмнейшее спасибо и удачи!

  • @ergo4183
    @ergo4183 8 місяців тому

    Добрый день. Подскажите что за браузер используете? В частности интересует как скрыта верхняя строка ввода и вкладок

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Arc, с бета-версии с ними, вроде недавно вышел на windows, Linux и мобилке

  • @servera-center
    @servera-center 8 місяців тому

    скажите, а gulp можно поставить, не ставя на комп node.js?

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Не получится, потому что нужна среда для выполнения этого кода

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Еще зависит значение слова поставить, если скачать, то можно скачать файлы с исходным кодом, запустить не выйдет

    • @servera-center
      @servera-center 8 місяців тому

      @@nikolaypavlin Сделать сборку gulp
      и запускать когда надо

    • @servera-center
      @servera-center 8 місяців тому

      @@nikolaypavlin ну есть сборка gulp
      имел ввиду установить туда node.js и при необходимости gulp запускать
      так может проще

  • @MikeDev-Sooworr
    @MikeDev-Sooworr 2 місяці тому

    Честно говоря - не очень понятно, что, всё-таки делает опция -f при выводе логов. И даже в официальной версии нашёл два примера с этим флагом, но без пояснений, что именно он делает. Уточни, пожалуйста.

    • @nikolaypavlin
      @nikolaypavlin  2 місяці тому +1

      Потоковый вывод лога, если просто логс, то выведет весь лог на момент написания команды
      Если logs -f, то будет «висеть» процесс прослушивания лога и когда контейнер что-то новое в логи добавит ты это увидишь в живом режиме

    • @MikeDev-Sooworr
      @MikeDev-Sooworr 2 місяці тому

      @@nikolaypavlin , теперь понял. Законспектирую твой ответ. Спасибо.

    • @MikeDev-Sooworr
      @MikeDev-Sooworr 2 місяці тому

      @@nikolaypavlin хотел добавить. Конечно, понятно, что ты ограничен временными рамками, но поверь - детализация и скрупулёзность объяснений каких-то деталей и компонентов темы..., особенно которые ты в процессе упомянул - повышает ценность твоих видео в гиперболической прогрессии. Желаю успеха!

  • @cozma73
    @cozma73 8 місяців тому

    Вот не допру я , в вм память ставишь допустим 50 гигов , а докере ? Типа база данных

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому +1

      Да, не сказал про это, в докер десктоп (в убунте без GUI, через файл) есть настройка выделяемых для докер ресурсов, по умолчанию контейнер может претендовать на них все
      Но через опции можно ограничить

  • @dmkn96
    @dmkn96 8 місяців тому

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

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому +1

      Принципы аналогичные всему остальному миру - конференции + социальные сети.
      В основном все ИТ группы сейчас в телеге, по ИИ я вот тут читаю, автор периодически делает сходки - t.me/ai_newz

    • @dmkn96
      @dmkn96 8 місяців тому

      @@nikolaypavlin спасибо!

  • @antonshtihov7662
    @antonshtihov7662 8 місяців тому

    А виртуальное окружение создавать и активировать не надо?

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Не понимаю вопрос

  • @bonjovi8610
    @bonjovi8610 8 місяців тому

    До мидла, а в скобках джуниор. Это как?

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Ну для новичков, мидлы уже знают скорее всего или могут освежить знания или мелкие фишки какие-то найти

  • @Roman-m3u4h
    @Roman-m3u4h 8 місяців тому +1

    Звук с двух микрофонов невозможно слушать

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Есть косяк, на монтаже уже было не поправить, но вот сейчас перечитал коммент, а что если реально obs забрал звук с внешнего микро и с мака

    • @Roman-m3u4h
      @Roman-m3u4h 8 місяців тому

      ​@@nikolaypavlin В OBS кстати можно писать раздельными дорожками, и затем использовать одну. Экспериментально прогнал кусок через Enhance Speech from Adobe - эхо убрало, но у звука с вебки постоянные перегрузки и вот это уже не исправишь

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Вот да, буду знать, исправлюсь, я обычно костылил писал весь видос через камеру и ПК и выбирал дорожку с камеры (там Dji mic), но тут камера была не нужна и решил писать напрямую в ноут

  • @serhioramires3166
    @serhioramires3166 7 місяців тому

    первые 12 минут весьма волный пересказ того как поет Шаляпин и получилось очень фигово. Надеюсь дальше будет получше... все таки еще 2 часа..
    Мне кажется учить на docker desktop не стоит.
    Про англицизмы неудачная фраза. Это все написано на аглийском. Его должно быть как можно больше и без акцента ))

    • @nikolaypavlin
      @nikolaypavlin  7 місяців тому

      Любое обучение с вероятностью 99% - это пересказ чего-то, один процент оставим на уникальные изобретения (которые все равно на чем-то основаны)
      Тебе кажется, визуализация помогает в формировании понимания о чем идет речь
      Про англицизмы было обсуждение под другим роликом, отложилось, поэтому в этом про это говорил. Без акцента проще говорить находясь в среде этого языка, у меня такой возможности нет, а если бы была, то и канал скорее был бы на английском. При этом скорее разделяю культурные особенности и считаю, что в «русском английском» есть свой шар

    • @serhioramires3166
      @serhioramires3166 7 місяців тому

      @@nikolaypavlin Извините, что витевато написал в первом посте. Хотел выразить мысль, что идет рассказ про процесс установки, но так поверхностно, что можно было и вовсе не рассказывать. только времени заняло чуть ли не 12 минут. Можно было немного поберечь время тех кто будет смотреть Ваш ролик.

  • @alexdr1279
    @alexdr1279 8 місяців тому

    Спасибо. Но по докеру информации и так тонны. Пора бы уже не о докере рассказывать, а о стандартах контейнеризации. Это не камень в ваш огород, в смысле. (Хотя честно признаюсь, не весь курс глянул этот). О том что мир уже давно докером не един. Вы в начале говорите что многие компании упаковывают приложения в докер и деплоят в оркестраторы. Так вот интересная информация, в самом популярном оркестраторе в мире, по сути стандарт де факто уже, он же кубер, докера нет. А докер компоузом вообще обычно разрабы пользуются при локальной разработке. Часто начал встречаться podman. Так что лучше бы разобраться что такое runc, CRI, OSI, containerd, почему в кубере отказались от докера.... Это если вы метите в сторону девопса или куда то рядом, а разработчикам явно видео полезное.

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

      Да, как раз в финальной части хотел рассказать про podman, cri, oci, containerd, buildah, но потом решил, что если делать это, то лучше отдельным видео, потому что и я подустал его записывать и тема не для новичков

    • @alexdr1279
      @alexdr1279 8 місяців тому

      ​@@nikolaypavlin понимаю. Работа достойная уважения. Представляю сколько сил и времени отнимает снимать подобное.

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому +1

      P.S. Мы компоузом и в проде пользуемся, нам пока хватает, надежность через мониторинг, а до проблем масштабирования под нагрузку нам пока далеко, еще даже вертикально особо не начали

    • @alexdr1279
      @alexdr1279 8 місяців тому

      ​​@@nikolaypavlinа меня вот судьба занесла в суровый ынтерпрайз). Пришел я, правда, с компании где куб уже был, но юзали больше потому что модно))). Пришлось в дикой спешке осваивать все)

    • @nikolaypavlin
      @nikolaypavlin  8 місяців тому

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