Чем отличается StatefulSet от Deployment?
Deployment — ресурс Kubernetes предназнваенный для развертывания приложения без сохранения состояния. При использовании PVC все реплики будут использовать один и тот же том, и ни один из них не будет иметь собственного состояния.
StatefulSet — поддерживают состояние приложений за пределами жизненного цикла отдельных модулей pod, например для хранилища. Используется для приложений с отслеживанием состояния, каждая реплика модуля будет иметь собственное состояние и будет использовать свой собственный том.
#devops #девопс
Подпишись 👉@i_DevOps
Deployment — ресурс Kubernetes предназнваенный для развертывания приложения без сохранения состояния. При использовании PVC все реплики будут использовать один и тот же том, и ни один из них не будет иметь собственного состояния.
StatefulSet — поддерживают состояние приложений за пределами жизненного цикла отдельных модулей pod, например для хранилища. Используется для приложений с отслеживанием состояния, каждая реплика модуля будет иметь собственное состояние и будет использовать свой собственный том.
#devops #девопс
Подпишись 👉@i_DevOps
👍9🔥1
Что ты такое, dhclient?
Сетевой стек Linux не прост даже на первый взгляд: приложение — в юзерспейсе, а всё, что после сокета, — в ядре операционки. И там тысяча реализаций TCP. Любое взаимодействие с сетью — системный вызов с переключением контекста в ядре.
Чтобы лишний раз не дёргать ядро прерываниями, придумали DMA — Direct Memory Access. Это когда трафик пишется напрямую в память, откуда он считывается приложением в обход ядра. И это дало жизнь классу софта с режимом работы kernel bypass. Например, при DPDK (Intel Data Plane Development Kit) сетевая карта целиком передаётся в userspace, а ядро даже не подозревает о её существовании.
Потом был BPF. А ещё потом усилиями Алексея Старовойтова и компании миру была показана eBPF — штука, умеющая делать прокол в ядро и инжектировать туда микроскопические виртуальные машины с кодом, которые могут в обход всего и вся взаимодействовать с системными событиями, и в том числе с трафиком. Супербыстро и оптимально (на фоне стандартного стека, конечно же). А это в свою очередь дало возможность использовать XDP для ускорения обработки трафика.
Но даже помимо хаков работы с ядром есть такие штуки, как sk_buff, в которой хранятся метаданные всех миллионов протоколов (в большинстве случаев они вообще не нужны: тащим с собой легаси). Есть NAPI (New API), которая призвана уменьшить число прерываний. А 100500 вариантов разных tables? Iptables, arptables, ip6tables, ebtables, nftables…
Если вам мало — ещё придумали SR-IOV. Там тоже уже упомянутый DMA, а ещё можно посплитить физическую карточку на несколько виртуальных и раздать их в разные виртуалки и приложения. Под ручку с DMA идёт и RDMA, когда мы пишем трафик напрямую в память, но не в свою, а в чужую на удалённой по сети машине.
И в этих копаниях можно уйти безгранично далеко. Но сегодня мы всё же поговорим о вещах более приземлённых и повседневных, которые лишь приоткрывают вход в эту разветвлённую сеть кроличьих нор. Мы разберём одну любопытную задачку, на примере которой ужаснёмся (а кто-то ухмыльнётся деловито в усы) тому, как сложно может быть реализован такой простой протокол, как DHCP.
https://habr.com/ru/companies/yandex/articles/774462/
#devops #девопс
Подпишись 👉@i_DevOps
Сетевой стек Linux не прост даже на первый взгляд: приложение — в юзерспейсе, а всё, что после сокета, — в ядре операционки. И там тысяча реализаций TCP. Любое взаимодействие с сетью — системный вызов с переключением контекста в ядре.
Чтобы лишний раз не дёргать ядро прерываниями, придумали DMA — Direct Memory Access. Это когда трафик пишется напрямую в память, откуда он считывается приложением в обход ядра. И это дало жизнь классу софта с режимом работы kernel bypass. Например, при DPDK (Intel Data Plane Development Kit) сетевая карта целиком передаётся в userspace, а ядро даже не подозревает о её существовании.
Потом был BPF. А ещё потом усилиями Алексея Старовойтова и компании миру была показана eBPF — штука, умеющая делать прокол в ядро и инжектировать туда микроскопические виртуальные машины с кодом, которые могут в обход всего и вся взаимодействовать с системными событиями, и в том числе с трафиком. Супербыстро и оптимально (на фоне стандартного стека, конечно же). А это в свою очередь дало возможность использовать XDP для ускорения обработки трафика.
Но даже помимо хаков работы с ядром есть такие штуки, как sk_buff, в которой хранятся метаданные всех миллионов протоколов (в большинстве случаев они вообще не нужны: тащим с собой легаси). Есть NAPI (New API), которая призвана уменьшить число прерываний. А 100500 вариантов разных tables? Iptables, arptables, ip6tables, ebtables, nftables…
Если вам мало — ещё придумали SR-IOV. Там тоже уже упомянутый DMA, а ещё можно посплитить физическую карточку на несколько виртуальных и раздать их в разные виртуалки и приложения. Под ручку с DMA идёт и RDMA, когда мы пишем трафик напрямую в память, но не в свою, а в чужую на удалённой по сети машине.
И в этих копаниях можно уйти безгранично далеко. Но сегодня мы всё же поговорим о вещах более приземлённых и повседневных, которые лишь приоткрывают вход в эту разветвлённую сеть кроличьих нор. Мы разберём одну любопытную задачку, на примере которой ужаснёмся (а кто-то ухмыльнётся деловито в усы) тому, как сложно может быть реализован такой простой протокол, как DHCP.
https://habr.com/ru/companies/yandex/articles/774462/
#devops #девопс
Подпишись 👉@i_DevOps
👍8
GitLab 17.0 Release
Вышел релиз GitLab 17.0 с каталогом CI/CD в общем доступе и новой метрикой аналитики цикла разработки AI Impact
https://about.gitlab.com/releases/2024/05/16/gitlab-17-0-released/
#devops #девопс
Подпишись 👉@i_DevOps
Вышел релиз GitLab 17.0 с каталогом CI/CD в общем доступе и новой метрикой аналитики цикла разработки AI Impact
https://about.gitlab.com/releases/2024/05/16/gitlab-17-0-released/
#devops #девопс
Подпишись 👉@i_DevOps
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Rustypaste
Это минималистичный и удобный сервис для загрузки файлов, разработанный на языке Rust и использующий веб-фреймворк Actix, который выбран за его безопасность, высокую производительность и простоту.
Наиболее простой способ взаимодействия с сервером rustypaste — через curl, однако вы также можете воспользоваться командным инструментом rpaste, написанным на Rust.
Rustypaste Github
Rustypaste-cli Github
Taking Rust to the Cloud: Blazingly Fast File Sharing
#devops #девопс #cli
Подпишись 👉@i_DevOps
Это минималистичный и удобный сервис для загрузки файлов, разработанный на языке Rust и использующий веб-фреймворк Actix, который выбран за его безопасность, высокую производительность и простоту.
Наиболее простой способ взаимодействия с сервером rustypaste — через curl, однако вы также можете воспользоваться командным инструментом rpaste, написанным на Rust.
Rustypaste Github
Rustypaste-cli Github
Taking Rust to the Cloud: Blazingly Fast File Sharing
#devops #девопс #cli
Подпишись 👉@i_DevOps
👍1
KubeBrain
Высокопроизводительная система метаданных для Kubernetes
Kubernetes - это распределенная система оркестровки и планирования приложений. Она стала стандартом де-факто для облачных нативных баз приложений, но ее официальный масштаб стабильной работы ограничен 5 тыс. узлов. Этого достаточно для большинства сценариев работы приложений, но все же недостаточно для приложений с миллионами машинных узлов. С ростом "цифровизации" и, в частности, " cloud-native", общая глобальная ИТ-инфраструктура будет продолжать расти ускоренными темпами. Для систем оркестровки и планирования распределенных приложений есть два пути адаптации к этой тенденции.
Горизонтальное масштабирование: создание возможности управления N кластерами.
Вертикальное масштабирование: увеличение размера отдельных кластеров. Для масштабирования одного кластера хранение мета/состояния информации является одной из основных точек масштабирования, и данный проект призван решить проблемы масштабируемости и производительности хранения информации о состоянии кластера.
https://github.com/kubewharf/kubebrain
#devops #девопс
Подпишись 👉@i_DevOps
Высокопроизводительная система метаданных для Kubernetes
Kubernetes - это распределенная система оркестровки и планирования приложений. Она стала стандартом де-факто для облачных нативных баз приложений, но ее официальный масштаб стабильной работы ограничен 5 тыс. узлов. Этого достаточно для большинства сценариев работы приложений, но все же недостаточно для приложений с миллионами машинных узлов. С ростом "цифровизации" и, в частности, " cloud-native", общая глобальная ИТ-инфраструктура будет продолжать расти ускоренными темпами. Для систем оркестровки и планирования распределенных приложений есть два пути адаптации к этой тенденции.
Горизонтальное масштабирование: создание возможности управления N кластерами.
Вертикальное масштабирование: увеличение размера отдельных кластеров. Для масштабирования одного кластера хранение мета/состояния информации является одной из основных точек масштабирования, и данный проект призван решить проблемы масштабируемости и производительности хранения информации о состоянии кластера.
https://github.com/kubewharf/kubebrain
#devops #девопс
Подпишись 👉@i_DevOps
GitHub
GitHub - kubewharf/kubebrain: A High Performance Metadata System for Kubernetes
A High Performance Metadata System for Kubernetes. Contribute to kubewharf/kubebrain development by creating an account on GitHub.
👍2
Managing Cloud Native Data on Kubernetes: Architecting Cloud Native Data Services Using Open Source Technology
Автор: Jeff Carpenter (2023)
Используя Kubernetes в качестве платформы, вы познакомитесь с технологиями с открытым исходным кодом, которые разработаны и созданы для облачных вычислений. Авторы приводят конкретные примеры, которые помогут вам изучить новые варианты использования и избежать подводных камней, с которыми сталкивались другие. Вы получите инсайдерский взгляд на перспективы от новаторов, создающих архитектуры и инфраструктуры следующего поколения.
#devops #девопс
Подпишись 👉@i_DevOps
Автор: Jeff Carpenter (2023)
Используя Kubernetes в качестве платформы, вы познакомитесь с технологиями с открытым исходным кодом, которые разработаны и созданы для облачных вычислений. Авторы приводят конкретные примеры, которые помогут вам изучить новые варианты использования и избежать подводных камней, с которыми сталкивались другие. Вы получите инсайдерский взгляд на перспективы от новаторов, создающих архитектуры и инфраструктуры следующего поколения.
#devops #девопс
Подпишись 👉@i_DevOps
👍4
Настройка CI/CD для самых маленьких разработчиков
Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позволяет не тратить время на поход к коллегам (и ожидание их реакции), т.е. в целом повышает комфорт работы и дает понимание, почему все происходит именно так.
Настроек для пайплайна Gitlab очень много. В этой статье, не вдаваясь в недра тюнинга, поговорим о том, как выглядит скрипт пайплайна, из каких блоков он состоит и что может содержать.
https://habr.com/ru/companies/maxilect/articles/799177/
#devops #девопс
Подпишись 👉@i_DevOps
Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позволяет не тратить время на поход к коллегам (и ожидание их реакции), т.е. в целом повышает комфорт работы и дает понимание, почему все происходит именно так.
Настроек для пайплайна Gitlab очень много. В этой статье, не вдаваясь в недра тюнинга, поговорим о том, как выглядит скрипт пайплайна, из каких блоков он состоит и что может содержать.
https://habr.com/ru/companies/maxilect/articles/799177/
#devops #девопс
Подпишись 👉@i_DevOps
👍11❤6
Чем отличается Kubernetes от Openshift?
Openshift имеет более строгие политики безопасности и модели аутентификации.
Openshift поддерживает полную интеграцию CI/CD Jenkins.
Openshift имеет веб-консоль по-умолчанию. В Kubernetes консоль необходимо дополнительно устанавливать консоль.
В Kubernetes возможно устанавливать сторонние сетевые плагины. В Openshift используется собственное сетевое решение Open vSwitch, которое предоставляет 3 различный плагина.
Kubernetes может быть установлен практически на любой дистрибутив Linux. Openshift имеет ограничения на устанавливаемые дистрибутивы, преимущественно используются RH-дистрибутивы.
Kubernets доступен в большинстве облачных платформ - GCP, AWS, Azure, Yandex.Cloud. Openshift доступен на облачной платформе Azure и облаке от IBM.
По-умолчанию, в Openshift поды в кластере могут быть запущены только под обычным пользователем, чтобы запустить под под пользователем root необходимо выдать права для сервисного аккаунта. В Kubernetes по-умолчанию поды могут быть запущены по пользователем root.
#devops #девопс
Подпишись 👉@i_DevOps
Openshift имеет более строгие политики безопасности и модели аутентификации.
Openshift поддерживает полную интеграцию CI/CD Jenkins.
Openshift имеет веб-консоль по-умолчанию. В Kubernetes консоль необходимо дополнительно устанавливать консоль.
В Kubernetes возможно устанавливать сторонние сетевые плагины. В Openshift используется собственное сетевое решение Open vSwitch, которое предоставляет 3 различный плагина.
Kubernetes может быть установлен практически на любой дистрибутив Linux. Openshift имеет ограничения на устанавливаемые дистрибутивы, преимущественно используются RH-дистрибутивы.
Kubernets доступен в большинстве облачных платформ - GCP, AWS, Azure, Yandex.Cloud. Openshift доступен на облачной платформе Azure и облаке от IBM.
По-умолчанию, в Openshift поды в кластере могут быть запущены только под обычным пользователем, чтобы запустить под под пользователем root необходимо выдать права для сервисного аккаунта. В Kubernetes по-умолчанию поды могут быть запущены по пользователем root.
#devops #девопс
Подпишись 👉@i_DevOps
👍10
Набор современных панелей Grafana для Kubernetes
https://github.com/dotdc/grafana-dashboards-kubernetes
#devops #девопс
Подпишись 👉@i_DevOps
https://github.com/dotdc/grafana-dashboards-kubernetes
#devops #девопс
Подпишись 👉@i_DevOps
👍7
Что такое CBD?
Компонентно-ориентированное программирование (CBD) представляет собой инновационный подход к разработке продукта. Вместо традиционного создания продукта с нуля, разработчики используют CBD для поиска уже существующих, проверенных и качественных компонентов, которые затем комбинируются для создания нового и оригинального продукта. Этот подход позволяет улучшить качество и надежность продукта, а также упростить его сопровождение и обновление, благодаря использованию уже проверенных компонентов. CBD открывает новые возможности для разработчиков, позволяя им быстрее и эффективнее создавать продукты, используя уже существующие ресурсы. нового и оригинального продукта. Этот процесс проходит вместо обычного для многих процесса создания продукта с нуля.
#devops #девопс
Подпишись 👉@i_DevOps
Компонентно-ориентированное программирование (CBD) представляет собой инновационный подход к разработке продукта. Вместо традиционного создания продукта с нуля, разработчики используют CBD для поиска уже существующих, проверенных и качественных компонентов, которые затем комбинируются для создания нового и оригинального продукта. Этот подход позволяет улучшить качество и надежность продукта, а также упростить его сопровождение и обновление, благодаря использованию уже проверенных компонентов. CBD открывает новые возможности для разработчиков, позволяя им быстрее и эффективнее создавать продукты, используя уже существующие ресурсы. нового и оригинального продукта. Этот процесс проходит вместо обычного для многих процесса создания продукта с нуля.
#devops #девопс
Подпишись 👉@i_DevOps
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Hardeneks
Выполняет проверку того, следует ли кластер EKS лучшим практикам EKS.
Quick Start:
https://github.com/aws-samples/hardeneks
#devops #девопс
Подпишись 👉@i_DevOps
Выполняет проверку того, следует ли кластер EKS лучшим практикам EKS.
Quick Start:
python3 -m venv /tmp/.venv
source /tmp/.venv/bin/activate
pip install hardeneks
hardenekshttps://github.com/aws-samples/hardeneks
#devops #девопс
Подпишись 👉@i_DevOps
👍2
Опишите некоторые шаблоны развертывания.
Blue Green развертывания и Canary-релизы являются распространенными шаблонами развертывания.
В сине-зеленых развертываниях у вас есть две идентичные среды. В «зеленой» среде находится текущая производственная система. Развертывание происходит в «синей» среде.
«Синяя» среда проверяется на наличие неисправностей и, если все работает хорошо, балансировка нагрузки и другие компоненты переключаются из «зеленой» среды в «синюю».
Canary-релизы — это релизы, в которых определенные функции предоставляются определенной группе пользователей, чтобы снизить риск, связанный с выпуском новых функций.
#devops #девопс
Подпишись 👉@i_DevOps
Blue Green развертывания и Canary-релизы являются распространенными шаблонами развертывания.
В сине-зеленых развертываниях у вас есть две идентичные среды. В «зеленой» среде находится текущая производственная система. Развертывание происходит в «синей» среде.
«Синяя» среда проверяется на наличие неисправностей и, если все работает хорошо, балансировка нагрузки и другие компоненты переключаются из «зеленой» среды в «синюю».
Canary-релизы — это релизы, в которых определенные функции предоставляются определенной группе пользователей, чтобы снизить риск, связанный с выпуском новых функций.
#devops #девопс
Подпишись 👉@i_DevOps
👍2
K9s
Предоставляет терминальный пользовательский интерфейс для взаимодействия с вашими кластерами Kubernetes. Цель этого проекта - упростить навигацию, наблюдение и управление приложениями в естественных условиях. K9s постоянно следит за изменениями в Kubernetes и предлагает последующие команды для взаимодействия с наблюдаемыми ресурсами.
https://github.com/derailed/k9s
#devops #девопс
Подпишись 👉@i_DevOps
Предоставляет терминальный пользовательский интерфейс для взаимодействия с вашими кластерами Kubernetes. Цель этого проекта - упростить навигацию, наблюдение и управление приложениями в естественных условиях. K9s постоянно следит за изменениями в Kubernetes и предлагает последующие команды для взаимодействия с наблюдаемыми ресурсами.
https://github.com/derailed/k9s
#devops #девопс
Подпишись 👉@i_DevOps
👍7❤3🔥2
25 новых проектов в песочнице CNCF: мегаобзор
Cloud Native Computing Foundation (CNCF) — международная некоммерческая организация, основанная The Linux Foundation в 2015 году. Её основные цели — содействие развитию контейнерных технологий и координация технической отрасли вокруг них. В число учредителей входят такие компании, как Google, CoreOS, Mesosphere, Red Hat, Twitter, Huawei, Intel, RX-M, Cisco, IBM, Docker, Univa и VMware. На сегодняшний день CNCF поддерживают более 450 членов.
https://habr.com/ru/companies/flant/articles/819765/
#devops #девопс
Подпишись 👉@i_DevOps
Cloud Native Computing Foundation (CNCF) — международная некоммерческая организация, основанная The Linux Foundation в 2015 году. Её основные цели — содействие развитию контейнерных технологий и координация технической отрасли вокруг них. В число учредителей входят такие компании, как Google, CoreOS, Mesosphere, Red Hat, Twitter, Huawei, Intel, RX-M, Cisco, IBM, Docker, Univa и VMware. На сегодняшний день CNCF поддерживают более 450 членов.
https://habr.com/ru/companies/flant/articles/819765/
#devops #девопс
Подпишись 👉@i_DevOps
👍6❤1
Каково значение непрерывного тестирования в DevOps?
Процесс непрерывного тестирования выполняется в DevOps, чтобы избежать тестирования всего кода за раз. В традиционном SDLC мы тестируем код после того, как весь код разработан, но в DevOps мы тестируем мгновенно каждое изменение, внесенное в код. Этот вид тестирования позволяет избежать задержек с выпуском продукта, а также помогает добиться более высокого качества.
Почему важно иметь управление конфигурацией в DevOps?
Пример ответа: «Это гарантирует, что конфигурации приложения согласованы в различных средах, уменьшая количество ошибок во время развертывания и гарантируя, что приложения ведут себя должным образом».
Что такое Puppet Modules и чем они отличаются от Puppet Manifests?
Модуль Puppet — это просто набор данных (фактов, шаблонов, файлов и т. д.) и манифестов. Эти модули имеют определенную структуру каталогов и помогают организовать коды Puppet, поскольку их можно использовать для разделения кода на различные манифесты. Использование модулей Puppet для организации почти всех манифестов Puppet считается лучшей практикой. Модули Puppet отличаются от манифестов, поскольку последние представляют собой просто программы Puppet, содержащие код.
#devops #девопс
Подпишись 👉@i_DevOps
Процесс непрерывного тестирования выполняется в DevOps, чтобы избежать тестирования всего кода за раз. В традиционном SDLC мы тестируем код после того, как весь код разработан, но в DevOps мы тестируем мгновенно каждое изменение, внесенное в код. Этот вид тестирования позволяет избежать задержек с выпуском продукта, а также помогает добиться более высокого качества.
Почему важно иметь управление конфигурацией в DevOps?
Пример ответа: «Это гарантирует, что конфигурации приложения согласованы в различных средах, уменьшая количество ошибок во время развертывания и гарантируя, что приложения ведут себя должным образом».
Что такое Puppet Modules и чем они отличаются от Puppet Manifests?
Модуль Puppet — это просто набор данных (фактов, шаблонов, файлов и т. д.) и манифестов. Эти модули имеют определенную структуру каталогов и помогают организовать коды Puppet, поскольку их можно использовать для разделения кода на различные манифесты. Использование модулей Puppet для организации почти всех манифестов Puppet считается лучшей практикой. Модули Puppet отличаются от манифестов, поскольку последние представляют собой просто программы Puppet, содержащие код.
#devops #девопс
Подпишись 👉@i_DevOps
👍2
SuperEdge
Это система управления контейнерами с открытым исходным кодом для пограничных вычислений, позволяющая управлять вычислительными ресурсами и контейнерными приложениями в нескольких пограничных регионах. В текущем подходе эти ресурсы и приложения управляются как единый кластер Kubernetes. Родной кластер Kubernetes может быть легко преобразован в кластер SuperEdge.
https://github.com/superedge/superedge
#devops #девопс
Подпишись 👉@i_DevOps
Это система управления контейнерами с открытым исходным кодом для пограничных вычислений, позволяющая управлять вычислительными ресурсами и контейнерными приложениями в нескольких пограничных регионах. В текущем подходе эти ресурсы и приложения управляются как единый кластер Kubernetes. Родной кластер Kubernetes может быть легко преобразован в кластер SuperEdge.
https://github.com/superedge/superedge
#devops #девопс
Подпишись 👉@i_DevOps
👍3
Какая роль у контроллера DaemonSet?
DaemonSet используется в Kubernetes, когда необходимо запустить один или несколько экземпляров приложения на всех узлах кластера. Это означает, что при добавлении новых узлов в кластер необходимость вручного запуска подов, предназначенных для определенных служебных задач, отпадает. Например, с помощью DaemonSet можно автоматически развернуть поды с Prometheus Node Exporter для мониторинга, collectd, а также поды с fluentd или logstash для логирования данных с узлов.
#devops #девопс
Подпишись 👉@i_DevOps
DaemonSet используется в Kubernetes, когда необходимо запустить один или несколько экземпляров приложения на всех узлах кластера. Это означает, что при добавлении новых узлов в кластер необходимость вручного запуска подов, предназначенных для определенных служебных задач, отпадает. Например, с помощью DaemonSet можно автоматически развернуть поды с Prometheus Node Exporter для мониторинга, collectd, а также поды с fluentd или logstash для логирования данных с узлов.
#devops #девопс
Подпишись 👉@i_DevOps
👍3
Media is too big
VIEW IN TELEGRAM
Основы Docker. Большой практический выпуск
0:00:00 Вступление
0:02:22 Что такое Docker?
0:16:29 Простой пример Hello World
0:31:34 Пример WEB приложения
0:35:55 Работаем с портами
0:41:10 Что такое docker volume
0:46:54 Поднимаем временную базу данных
0:55:26 Разворачиваем реальный проект
1:00:35 Что такое docker-compose
1:05:23 Создаем виртуальную машину (подробно)
1:08:25 Ставим Docker и Docker compose на Linux
1:10:17 Delpoy проекта с ипользованием GitHub
1:16:50 Delpoy проекта с ипользованием DockerHub
источник
#devops #девопс
Подпишись 👉@i_DevOps
0:00:00 Вступление
0:02:22 Что такое Docker?
0:16:29 Простой пример Hello World
0:31:34 Пример WEB приложения
0:35:55 Работаем с портами
0:41:10 Что такое docker volume
0:46:54 Поднимаем временную базу данных
0:55:26 Разворачиваем реальный проект
1:00:35 Что такое docker-compose
1:05:23 Создаем виртуальную машину (подробно)
1:08:25 Ставим Docker и Docker compose на Linux
1:10:17 Delpoy проекта с ипользованием GitHub
1:16:50 Delpoy проекта с ипользованием DockerHub
источник
#devops #девопс
Подпишись 👉@i_DevOps
👍3👎1🥴1