В данном видео ты познакомишься с Docker и узнаешь, что он из себя представляет. Какая разница между Doker-ом и обычной виртуальной машиной, для чего он может понадобиться – показано на подробном примере. Автор рассматривает проблемы интеграции нового софта конечному юзеру – очень интересная тема не только для разработчика.
Эта лекция посвящена процессу установки Docker и Docker-compose на ОС Windows. Сначала обсуждаются требования для установки софта. В примере все действия будут происходить в ОС Windows 10. Важный нюанс: автор разбирает вариант установки “с проблемами”, чтобы ты не вляпался при первой инсталляции.
На этом уроке автор поможет любителям Linux установить все необходимое на Ubuntu 18.04. Как и в случае с Windows, Ubuntu должна быть 64-битной и версии CE. Автор выполняет все подготовительные шаги по официальному мануалу, чтобы избежать неточностей. После того как установка Docker будет завершена, ты научишься управлять контейнерами внутри родительской системы.
Установка – это хорошо, но пора переходить к управлению. В этом видео ты познакомишься с основными командами для работы с Docker-контейнерами. Все команды нужно вводить под sudo, т. к. требуются привилегии суперпользователя, а можно это обойти, добавив нужного юзера в группу docker. Список команд внушительный и для каждой приводится пример.
Важно понимать, что речь идет не о контейнере, а именно об образе, который лежит на Docker HUB. Для дальнейшего обучения тебе нужно создать учетку, что позволит хранить образы, использовать и делиться. По умолчанию тебе выдают публичный и закрытый (private) репозиторий. Весь процесс создания образа рассматривается на понятном примере.
В предыдущем уроке ты создал образ, но если в нем нужно что-то изменить, придется повторять все действия сначала, а это чревато ошибками. Для автоматизации процесса используется Dockerfile, который воспроизводит все задокументированные тобой действия. Это обычный текстовый файл (хоть и очень похож на простенький специализированный sh-скрипт) с набором команд для создания образа.
В уроке используется два образа для демонстрации возможности соединения. Один из образов – MariaDB. Установка производится всего одной командой, включающей в себя обращение к Docker и к хост-машине. Второй образ ставится точно так же. После установки двух образов тебя ждет поучительная история о принципе работы сети.
Тут ты познакомишься с Docker-compose и научишься создавать проекты. Демонстрация работы будет на ОС Windows и Ubuntu. Рассматриваемый инструмент нужен для упрощения автоматизации вкупе с Dockerfile. Compose предназначен для быстрой настройки и запуска различных сред разработки Docker. Все конфиги хранятся в файликах с расширением .yaml. Очень полезный компонент, который освободит от сопровождения вспомогательных рабочих скриптов.
Автор объясняет, как запускать контейнеры с помощью Docker-compose и Dockerfile. Как обычно, все пошагово и доступно. Начинается с создания Dockerfile и указания ключа, т. к. любой контейнер обязан хранить в себе ключ image или build.
Попутно ты разберешься с понятием томов. Если в двух словах, это обычные каталоги, не являющиеся частью файловой системы конкретного контейнера.
Лекция поможет понять разницу между контейнером и образом в Docker. Рецепт преобразования одной сущности в другую разбирается на примере мандарина. Вся суть магии в том, что одно преобразуется в другое и обратно автоматически силами Docker. Можно сказать, что образ тоже является контейнером, который хранит в себе все настройки и компоненты реального контейнера с ФС.
Этот видос познакомит тебя с ФС UnionFS и научит избегать типичных ошибок в процессе сборки образа. Каждый образ состоит из последовательности слоев. Docker использует UnionFS для объединения этих слоев в единую структуру. UnionFS настолько хитрая штука, что все файлы и директории (ветки) могут быть прозрачно наложены друг на друга для образования единой файловой системы.
Ты запустишь минимальный набор компонентов для старта Laravel в контейнере Docker-а. Для этой задачи тебе понадобятся PHP, MySQL и Composer. Сначала создаются пути к БД и проекту на хост-машине, т. е. локально, вне контейнера. Далее куча подготовительных шагов с билдами, правами и директориями. Но в конце тебя ждет автоустановка всего софта и больше тебе ничего не нужно делать.