uz
Feedback
DevOps Portal | Linux

DevOps Portal | Linux

Kanalga Telegram’da o‘tish

Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH

Ko'proq ko'rsatish

📈 Telegram kanali DevOps Portal | Linux analitikasi

DevOps Portal | Linux (@loose_code) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 13 144 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 9 722-o'rinni va Rossiya mintaqasida 50 499-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 13 144 obunachiga ega bo‘ldi.

13 Iyun, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -84 ga, so‘nggi 24 soatda esa -7 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 17.90% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 9.46% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 2 353 marta ko‘riladi; birinchi sutkada odatda 1 244 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 8 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent devops, kubernetes, docker, linux, ebpf kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH

Yuqori yangilanish chastotasi (oxirgi ma’lumot 14 Iyun, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

13 144
Obunachilar
-724 soatlar
-397 kunlar
-8430 kunlar
Postlar arxiv
Войти в айти НЕ ИЗИ! 😬 Тебя не бесят «гуру», которые обещают зп от 300к после двух недель на их легендарном курсе по Python
Войти в айти НЕ ИЗИ! 😬 Тебя не бесят «гуру», которые обещают зп от 300к после двух недель на их легендарном курсе по Python за 150к? 😂 - Меня ДА! Забудь про «развалить айти рыночек своим умищем»❌ Чтобы стать программистом, надо пропахать как чёрт за партой хотя бы годик! А чтобы не свихнуться в одиночку, залетай в чат начинающих Python-щиков, где ты получишь: 1️⃣ Разбор сложных вопросов простым языком 2️⃣ Поддержку тех, кто тоже с 0 учит Python, и не боится показаться глупым 3️⃣ Регулярные плюшки в виде стримов от препода с 15-ти летним опытом ➡️А еще, в закрепе есть БЕСПЛАТНЫЙ вводный курс по Python, ну это так, к слову)) Короче, всё для прокачки! Залетай — ссылка на чат (тык)

Автоматизируем выпуск валидных SSL-сертификатов в локальном Kubernetes В данном туториале максимально просто расскажу и покаж
Автоматизируем выпуск валидных SSL-сертификатов в локальном Kubernetes
В данном туториале максимально просто расскажу и покажу на практике как настроить автоматический выпуск сертификатов в локальном kubernetes так, что бы ваша локальная машина доверяла им. Я постарался написать его так, чтобы даже новичкам можно было настроить свой куб просто следуя данной инструкции
👉 Читать 👉 DevOps Portal

💡 Совет по Docker: Используйте аргументы в вашем Dockerfile для таких вещей, как тег базового образа. Таким образом, вам не
💡 Совет по Docker: Используйте аргументы в вашем Dockerfile для таких вещей, как тег базового образа. Таким образом, вам не придется изменять Dockerfile при каждом обновлении базового образа.
$ docker build --build-arg BASE_IMAGE_TAG=20.04 -t my-image .
👉 DevOps Portal

Все надоело и пропал интерес, чувствуешь себя амебой и хочется только залипать в телефоне. Бывает? Психолог взрослого человек
Все надоело и пропал интерес, чувствуешь себя амебой и хочется только залипать в телефоне. Бывает? Психолог взрослого человека - канал для айтишников, у которых периодически опускаются руки и отключается мозг, ибо переработки и постоянная тревожность не приводят к другим исходам. ✔️ Как научиться отвлекаться от работы и отдыхать? ✔️ Как совместить кучу рабочих задач и время с семьей? ✔️ Как справиться с прокрастинацией? ✔️ Как не растерять запал, даже если кажется, что ничего не выходит? Подписывайтесь на канал @vadimpetrov_psy и научитесь работать без упахивания, выгорания и ущерба для личной жизни! 👨🏻‍💻 Псс. Заходите в закреп канала - там много полезного, и даже бесплатный мини-курс.

1. Монолитная архитектура: Подходит для небольших приложений с ограниченными требованиями, а также для проектов, не предполагающих значительного роста или необходимости масштабировать отдельные компоненты. 2. Микросервисная архитектура: Подходит для более сложных и масштабных приложений, где важна возможность масштабирования, изоляция отказов и технологическая гибкость. Особенно полезна для организаций с несколькими кросс-функциональными командами, работающими над разными частями приложения. — Заключение Выбор между монолитной и микросервисной архитектурой зависит от конкретных требований, ограничений и целей вашего приложения и организации. Монолитные приложения проще в разработке и развертывании, тогда как микросервисы обеспечивают масштабируемость, отказоустойчивость и технологическую гибкость. Важно тщательно оценить потребности вашего проекта и взвесить все «за» и «против», прежде чем принимать окончательное решение. 👉 DevOps Portal

Микросервисы vs Монолитная архитектура В разработке программного обеспечения выбранный архитектурный подход может существенно повлиять на масштабируемость, удобство сопровождения и общую производительность приложения. Два основных архитектурных шаблона — монолитная архитектура и микросервисы — широко используются в современной разработке. Сегодня мы рассмотрим ключевые различия между ними, их преимущества и недостатки, а также дадим рекомендации по выбору подходящего подхода для конкретного случая. — Что такое монолитная архитектура? Монолитная архитектура — это традиционный подход, при котором все компоненты приложения, такие как пользовательский интерфейс, бизнес-логика и уровень доступа к данным, объединены в единую, неделимую систему. Эти компоненты тесно связаны между собой и развертываются как единое целое. Этот стиль архитектуры используется десятилетиями и остается актуальным для определенных типов приложений. 🔹Преимущества монолитной архитектуры 1. Простое развертывание: Монолитные приложения развертываются как единое целое, что делает процесс развертывания относительно простым. 2. Упрощенная разработка и тестирование: Поскольку все компоненты находятся в одном кодовом репозитории, разработчики могут легче понимать логику приложения, что упрощает разработку и тестирование. 3. Эффективное взаимодействие компонентов: В монолитном приложении компоненты взаимодействуют напрямую, так как работают в одном адресном пространстве памяти, что минимизирует накладные расходы на коммуникацию. 🔹Недостатки монолитной архитектуры 1. Проблемы с масштабируемостью: По мере роста и усложнения приложения становится трудно масштабировать отдельные компоненты независимо. В большинстве случаев приходится масштабировать всю систему, что может быть неэффективно и дорого. 2. Сложности при непрерывном развертывании: Любое обновление или исправление ошибки требует повторного развертывания всего приложения, что может привести к простою и усложнению процесса обновления. 3. Ограничения по технологиям: Монолитные приложения обычно разрабатываются на одном технологическом стеке, что снижает гибкость в выборе новых технологий для отдельных компонентов. — Что такое микросервисная архитектура? Микросервисная архитектура — это подход, при котором приложение строится как набор небольших, независимых сервисов, каждый из которых отвечает за определенную бизнес-логику. Эти сервисы слабо связаны друг с другом, взаимодействуют через четко определенные API и могут разрабатываться, развертываться и масштабироваться независимо. 🔹Преимущества микросервисной архитектуры 1. Гибкость в масштабировании: Каждый сервис можно масштабировать независимо в зависимости от его потребностей, что позволяет более эффективно использовать ресурсы. 2. Изоляция отказов: Если один сервис выходит из строя, это не обязательно влечет за собой сбой всего приложения, так как другие сервисы продолжают работать. 3. Технологическая гибкость: Каждый сервис может быть разработан с использованием наиболее подходящего технологического стека, что позволяет командам выбирать лучшие инструменты и языки программирования. 4. Непрерывное развертывание: Обновления и исправления могут применяться отдельно к каждому сервису, снижая риск сбоев и позволяя выпускать новые версии чаще. 🔹Недостатки микросервисной архитектуры 1. Усложнение системы: Разделение приложения на множество сервисов создает сложности в управлении межсервисной коммуникацией, обеспечении согласованности данных и мониторинге системы в целом. 2. Дополнительные операционные расходы: Управление множеством сервисов требует более сложной инфраструктуры и инструментов мониторинга. 3. Накладные расходы на производительность: Коммуникация между сервисами осуществляется через сеть, что может привести к дополнительной задержке из-за сериализации и десериализации данных. — Выбор между монолитной и микросервисной архитектурой Решение о выборе архитектурного подхода должно основываться на ряде факторов, таких как сложность приложения, требования к масштабируемости, размер команды и цели организации. Вот несколько общих рекомендаций:

💡 Совет по Linux Получайте уведомления, когда ваши команды в терминале завершаются! $ sudo apt update; notify-send "Обновлен
+1
💡 Совет по Linux Получайте уведомления, когда ваши команды в терминале завершаются!
$ sudo apt update; notify-send "Обновление завершено" "Получение обновлений завершено"
Замените apt update на любую команду, выполнение которой займет некоторое время. Не забудьте сначала установить inotify-tools:
$ sudo apt install inotify-tools
👉 DevOps Portal

Крутая программа для тех, кто уже работает с Linux и хочет погрузиться DevOps. В двух словах: программа на 2 месяца, ты учишь
Крутая программа для тех, кто уже работает с Linux и хочет погрузиться DevOps. В двух словах: программа на 2 месяца, ты учишься, тебе еще и платят. Начинка: начинающий и продвинутый курс по Linux, погружение в DevOps. Обучение с практикой, лабораторными и под контролем экспертов из K2 Сloud. Подробнее можно узнать на сайте

🤓 Что такое git stash? Git stash позволяет временно сохранить черновик ваших изменений, которые еще не были зафиксированы (committed), и вернуть рабочую директорию в чистое состояние. Это полезно, если вам нужно переключиться на другую задачу, но вы не хотите коммитить незавершенную работу. — Как работает Git Stash? Когда вы выполняете команду git stash, Git берет все незакоммиченные изменения из вашей рабочей директории и сохраняет их в специальном хранилище (stash) — по сути, это стек отложенных изменений. После этого все незакоммиченные изменения удаляются из рабочей копии, и она снова соответствует последнему коммиту (HEAD). Сохраненные изменения остаются в отдельном месте, пока вы не будете готовы снова применить их. Это позволяет переключаться между ветками, получать обновления из удаленного репозитория, выполнять rebase и другие операции, не мешая текущей незавершенной работе. — Рабочий процесс с Git Stash 🔹Сохранение изменений в stash Перед тем как зафиксировать изменения в stash, сначала добавьте файлы в индекс, чтобы Git начал их отслеживать:
$ git add .
Если нужно сохранить только определенные файлы, укажите их при добавлении:
$ git add file.txt demo.txt
Затем создайте новый stash:
```bash
$ git stash
Эта команда сохранит ваши изменения и вернет рабочую директорию в состояние последнего коммита. 🔹Присвоение имени stash Чтобы дать stash понятное название, используйте параметр -m:
git stash -m "<имя>"
Это поможет вам легче идентифицировать нужные сохраненные изменения позже. 🔹Просмотр списка stash'ей Чтобы увидеть список всех сохраненных stash'ей, используйте:
$ git stash list
Для просмотра краткого описания stash'а выполните: ```bash git stash show Где <stash> — это идентификатор stash'а из списка git stash list. 🔹Применение stash'а Когда вы готовы вернуть сохраненные изменения, используйте команду git stash pop:
git stash pop
Эта команда применяет изменения и удаляет stash из списка. Если вы хотите сохранить stash после применения, используйте:
git stash apply
🔹Применение конкретного stash'а Чтобы применить stash, кроме последнего, используйте:
git stash apply <stash>
Или:
git stash pop --index <stash>
Где <stash> — идентификатор stash'а из git stash list. apply сохраняет stash, а pop удаляет его после применения. 🔹Создание новой ветки с stash'ем Вы можете создать новую ветку и применить к ней изменения из stash'а:
git stash branch <branch-name> <stash>
Эта команда создаст новую ветку с изменениями из stash'а, привязанными к коммиту, в котором stash был создан. 🔹Удаление stash'ей Когда stash больше не нужен, удалите его командой:
git stash drop <stash>
Это удаляет один stash. Чтобы удалить все stash'и, используйте:
git stash clear
После очистки stash'и невозможно будет восстановить. 🔹Дополнительные возможности Git stash поддерживает множество дополнительных опций, включая возможность отправки stash'ей в удаленный репозиторий. Подробнее читайте в официальной документации. — Когда использовать Git Stash? Git stash полезен в следующих ситуациях: 🔹Переключение на другую ветку для получения обновлений 🔹Временное сохранение работы для исправления критической ошибки (hotfix) 🔹Разрешение конфликтов при выполнении git rebase 🔹Пауза в работе для слияния другой ветки в вашу С помощью stash можно легко менять контексты работы без необходимости делать временные коммиты. — Заключение Git stash позволяет откладывать локальные изменения без коммитов, помогая гибко управлять рабочим процессом и переключаться между ветками. Это делает его важным инструментом для эффективной работы с Git. 👉 DevOps Portal

💡 Быстрый совет по Linux 🐧 Команда diff — полезный инструмент для поиска различий между файлами в терминале Linux. Однако,
💡 Быстрый совет по Linux 🐧 Команда diff — полезный инструмент для поиска различий между файлами в терминале Linux. Однако, icdiff предлагает еще более удобное сравнение, выводя файлы бок о бок с цветным отображением изменений.
$ icdiff config-1 config-2
Результат выведет оба файла рядом, с выделением различий красным и зеленым цветами, что позволяет легко увидеть различия. 👉 DevOps Portal

В конце 2022 года Bitcoin стоил $16k, Solana – $8, мемкоины никто не воспринимал всерьёз. Прошло чуть больше года – BTC x7, Solana x25, мемкоины улетели на десятки тысяч процентов. Так же было и с "монетой Трампа" – многие не понимали, как зайти на раннем этапе, а те, кто разобрался, сделали x100+. Секрет? Крупные игроки не ждут сигналов в СМИ – они заходят, пока толпа спит. Чтобы не копаться самому – читай канал Crypto Master. Здесь все основные и ранние инсайды! Подписывайся – следующий x100 может быть твоим: https://t.me/+cSLHRmotJjllMjIy

Docker Daemon (Демон Docker) Демон Docker — это серверная составляющая Docker, которая работает в фоновом режиме для управлен
Docker Daemon (Демон Docker) Демон Docker — это серверная составляющая Docker, которая работает в фоновом режиме для управления образами Docker, контейнерами, сетями и томами. Он играет ключевую роль в архитектуре Docker, слушая запросы API от клиента Docker и выполняя запрашиваемые операции. —Ниже приведены основные функции демона Docker: 1. Управление образами 🔹Управляет Docker-образами, которые используются как шаблоны для создания контейнеров. 🔹Загружает образы из реестра Docker (например, Docker Hub) и сохраняет их локально на хосте Docker. 🔹Управляет жизненным циклом и хранением этих образов. 2. Управление контейнерами 🔹Отвечает за запуск, остановку и управление контейнерами Docker. 🔹Создает новый контейнер из образа при выполнении команды docker run. 🔹Останавливает и удаляет контейнеры в ответ на команды docker stop и docker rm. 3. Сетевое управление 🔹Управляет сетями Docker, которые соединяют контейнеры друг с другом и с внешними системами. 🔹Поддерживает различные сетевые драйверы (например, bridge, host, overlay, macvlan) для обработки различных сетевых требований и сценариев. 4. Управление томами 🔹Управляет томами Docker для сохранения данных, генерируемых контейнерами. 🔹Позволяет подключать тома к контейнерам во время их работы, что позволяет сохранять и обмениваться данными между контейнерами. 5. API 🔹Предоставляет REST API для программного взаимодействия с Docker. 🔹Клиент Docker использует этот API для отправки команд (например, создание контейнеров или управление образами) демону. — Как работает демон Docker 🔹Фоновый процесс: работает непрерывно в фоновом режиме на хосте Docker. 🔹Взаимодействие: прослушивает запросы API от клиента Docker через Unix-сокет или сетевой порт. 🔹Настройка: может быть настроен с помощью различных параметров, таких как драйверы хранения, сетевые драйверы и параметры логирования, для разных вариантов использования. Демон Docker является основным компонентом архитектуры Docker, обеспечивая удобное управление контейнерами, образами и сетями, а также обеспечивая гибкость и масштабируемость для контейнеризованных приложений. 👉 DevOps Portal

Быстрый совет по Linux 🐧 Вы можете использовать опцию -exec команды find, чтобы вызвать внешнюю программу для выполнения опр
Быстрый совет по Linux 🐧 Вы можете использовать опцию -exec команды find, чтобы вызвать внешнюю программу для выполнения определённого действия над найденными файлами, соответствующими заданным критериям. Например, удаление файлов, вывод прав доступа и т. д.
$ find ~/ -type f -exec ls -lah {} \;
Это особенно полезно, когда нужно выполнить одно и то же действие над несколькими файлами, расположенными в разных местах. Приведённая команда выводит информацию о правах доступа и других метаданных для каждого найденного файла. Разбор опции -exec: 🔹exec ls — указывает find выполнить команду ls для каждого найденного файла. 🔹-lah — отображает все файлы (включая скрытые), их права доступа и другие метаданные (например, размер) в удобочитаемом формате. 🔹{} — это специальный placeholder, заменяемый именем каждого найденного файла. Он всегда должен быть последним в списке параметров. 🔹; — указывает конец списка параметров. Его необходимо экранировать (\;), иначе shell интерпретирует его неправильно. Также вместо ; можно использовать +, что позволяет передавать сразу несколько файлов в одну команду. Между + и {} должен быть пробел. Можно выполнять несколько команд с помощью -exec. Например, следующая команда считает количество слов в текстовых файлах и их занимаемое место на диске:
$ find . -name "*.txt" -exec wc {} \; -exec du -sh {} \;
👉 DevOps Portal

Требуются парни и девушки в возрасте 19–40 лет, желающие работать в сфере IT. Опыт в программировании не нужен. Завтра запуск
Требуются парни и девушки в возрасте 19–40 лет, желающие работать в сфере IT. Опыт в программировании не нужен. Завтра запускаем бесплатный онлайн-интенсив по Frontend-разработке, где будем показывать, как разрабатывать сайты и веб-приложения используя ChatGPT. За 7 дней обучения ты: 1. Создашь полноценный веб-сайт на HTML и CSS; 2. Оживишь страницу с помощью JavaScript; 3. Используешь фронтенд-фреймворк Angular; 4. Подключишь Backend и загрузишь сайт на хостинг; 5. Получишь советы по доработке своего проекта; 6. Научишься использовать ChatGPT и Giga во Frontend-разработке; 7. Узнаешь 9 способов найти первый заказ на фрилансе даже без опыта. А главное, ты увидишь, что разрабатывать сайты и приложения не так сложно, как кажется. И поймёшь, как тебе развиваться в этой профессии, чтобы уже через пару месяцев зарабатывать от 1000$ на вёрстке сайтов. 👉 Проскочить на интенсив бесплатно 🔥 С 2019 стабильно помогаем с обучением, практикой, зарабатывать на фрилансе и проходить собеседования.

Лучшие практики использования томов Docker 🔹Используйте именованные тома для важных данных. 🔹Регулярно очищайте неиспользуемые тома, чтобы не занимать дисковое пространство. 🔹Будьте осторожны с привязанными томами, так как они дают контейнеру доступ к файловой системе хоста. 🔹Используйте плагины для томов для расширенных возможностей, таких как шифрование и снапшоты. ✅ Заключение Docker Volumes — это мощный инструмент для управления данными в контейнерах. Их грамотное использование значительно упрощает развертывание, разработку и администрирование контейнеризированных приложений. 👉 DevOps Portal

👩‍💻 Docker Volumes: Полное руководство Контейнеры Docker изначально задумывались как эфемерные, то есть их файловая система не сохраняется после остановки или удаления контейнера. Docker Volumes (тома) обеспечивают механизм хранения и обмена данными, который выходит за пределы жизненного цикла контейнера, предотвращая потерю данных. Это особенно важно для приложений, которым требуется постоянное хранилище, таких как базы данных, CMS или stateful-сервисы. — Типы томов Docker Существует три основных типа томов в Docker: 🔹Именованные тома (Named Volumes) Это наиболее распространенный и удобный тип. Они управляются самим Docker и хранятся в файловой системе хоста в специальном каталоге (/var/lib/docker/volumes/ на Linux). Именованные тома подходят для хранения данных, требующих сохранности (например, базы данных) и легко поддаются резервному копированию или миграции. 🔹Анонимные тома (Anonymous Volumes) Анонимные тома, как и именованные, управляются Docker, но не имеют явного имени. Они используются для временных данных, которые не нужно сохранять между пересозданиями или перезапусками контейнера. Их сложнее отслеживать, и они автоматически удаляются, когда контейнер, их использующий, уничтожается. 🔹Привязанные тома (Bind Mounts) В отличие от обычных томов, привязанные тома позволяют монтировать конкретный каталог или файл с хостовой системы в контейнер. Этот метод предоставляет больше контроля над местоположением и правами доступа к данным. Изменения, внесенные в файлы на хосте, сразу отображаются в контейнере и наоборот. Bind mounts удобны для совместного использования конфигурационных файлов или исходного кода в процессе разработки. — Создание и монтирование именованных томов Создать именованный том можно командой:
docker volume create jenkins_home
Если имя не указано, Docker сгенерирует его автоматически. Для запуска контейнера с монтированным томом используйте флаг -v:
docker run -d --name jenkins -p 8080:8080 -v jenkins_home:/var/data jenkins/jenkins
В этом примере том jenkins_home монтируется в контейнер по пути /var/data. По умолчанию тома монтируются с правами чтения-записи. Чтобы примонтировать том в режиме "только для чтения", используйте :ro:
docker run -d --name jenkins -p 8080:8080 -v jenkins_home:/var/data:ro jenkins/jenkins
Создание и монтирование анонимных томов Анонимный том создается автоматически при запуске контейнера с -v, но без указания источника:
docker run -d -v /data nginx
Создание и монтирование привязанных томов Привязанные тома используют файловую систему хоста, а не Docker. Чтобы создать bind mount, необходимо заранее создать нужный каталог или файл на хосте. Для монтирования каталога используйте флаг -v:
docker run -d -p 80:80 -v $(pwd):/data nginx
Или более явный --mount:
docker run -d -p 80:80 --mount type=bind,source=$(pwd),target=/data nginx
Теперь любые файлы, созданные в /data внутри контейнера, появятся в текущем каталоге на хосте. Важно: следите за правами доступа, чтобы избежать проблем с доступом к файлам. — Просмотр и управление томами Docker 🔹Список всех томов в системе:
docker volume ls
🔹Просмотр информации о томе:
docker volume inspect jenkins_home
🔹Удаление томов Docker Удаление конкретного тома:
docker volume rm jenkins_home
Удаление всех неиспользуемых томов:
docker volume prune
Анонимные тома и привязанные тома обычно удаляются вместе с контейнером. — Практическое применение Docker Volumes 🔹Сохранение данных: базы данных или файловые хранилища сохраняют данные даже после удаления контейнера. 🔹Общий доступ к данным: несколько контейнеров могут использовать общий том. 🔹Разработка: привязанные тома позволяют разрабатывать без пересборки контейнеров, так как код обновляется на лету. 🔹Резервное копирование и миграция: данные тома можно скопировать с одного хоста на другой.

Лучшие практики использования томов Docker 🔹Используйте именованные тома для важных данных. 🔹Регулярно очищайте неиспользуемые тома, чтобы не занимать дисковое пространство. 🔹Будьте осторожны с привязанными томами, так как они дают контейнеру доступ к файловой системе хоста. 🔹Используйте плагины для томов для расширенных возможностей, таких как шифрование и снапшоты. ✅ Заключение Docker Volumes — это мощный инструмент для управления данными в контейнерах. Их грамотное использование значительно упрощает развертывание, разработку и администрирование контейнеризированных приложений. 👉 DevOps Portal

👩‍💻 Docker Volumes: Полное руководство Контейнеры Docker изначально задумывались как эфемерные, то есть их файловая система не сохраняется после остановки или удаления контейнера. Docker Volumes (тома) обеспечивают механизм хранения и обмена данными, который выходит за пределы жизненного цикла контейнера, предотвращая потерю данных. Это особенно важно для приложений, которым требуется постоянное хранилище, таких как базы данных, CMS или stateful-сервисы. — Типы томов Docker Существует три основных типа томов в Docker: 🔹Именованные тома (Named Volumes) Это наиболее распространенный и удобный тип. Они управляются самим Docker и хранятся в файловой системе хоста в специальном каталоге (/var/lib/docker/volumes/ на Linux). Именованные тома подходят для хранения данных, требующих сохранности (например, базы данных) и легко поддаются резервному копированию или миграции. 🔹Анонимные тома (Anonymous Volumes) Анонимные тома, как и именованные, управляются Docker, но не имеют явного имени. Они используются для временных данных, которые не нужно сохранять между пересозданиями или перезапусками контейнера. Их сложнее отслеживать, и они автоматически удаляются, когда контейнер, их использующий, уничтожается. 🔹Привязанные тома (Bind Mounts) В отличие от обычных томов, привязанные тома позволяют монтировать конкретный каталог или файл с хостовой системы в контейнер. Этот метод предоставляет больше контроля над местоположением и правами доступа к данным. Изменения, внесенные в файлы на хосте, сразу отображаются в контейнере и наоборот. Bind mounts удобны для совместного использования конфигурационных файлов или исходного кода в процессе разработки. — Создание и монтирование именованных томов Создать именованный том можно командой:
docker volume create jenkins_home
Если имя не указано, Docker сгенерирует его автоматически. Для запуска контейнера с монтированным томом используйте флаг -v:
docker run -d --name jenkins -p 8080:8080 -v jenkins_home:/var/data jenkins/jenkins
В этом примере том jenkins_home монтируется в контейнер по пути /var/data. По умолчанию тома монтируются с правами чтения-записи. Чтобы примонтировать том в режиме "только для чтения", используйте :ro:
docker run -d --name jenkins -p 8080:8080 -v jenkins_home:/var/data:ro jenkins/jenkins
Создание и монтирование анонимных томов Анонимный том создается автоматически при запуске контейнера с -v, но без указания источника:
docker run -d -v /data nginx
Создание и монтирование привязанных томов Привязанные тома используют файловую систему хоста, а не Docker. Чтобы создать bind mount, необходимо заранее создать нужный каталог или файл на хосте. Для монтирования каталога используйте флаг -v:
docker run -d -p 80:80 -v $(pwd):/data nginx
Или более явный --mount:
docker run -d -p 80:80 --mount type=bind,source=$(pwd),target=/data nginx
Теперь любые файлы, созданные в /data внутри контейнера, появятся в текущем каталоге на хосте. Важно: следите за правами доступа, чтобы избежать проблем с доступом к файлам. — Просмотр и управление томами Docker 🔹Список всех томов в системе:
docker volume ls
🔹Просмотр информации о томе:
docker volume inspect jenkins_home
🔹Удаление томов Docker Удаление конкретного тома:
docker volume rm jenkins_home
Удаление всех неиспользуемых томов:
docker volume prune
Анонимные тома и привязанные тома обычно удаляются вместе с контейнером. — Практическое применение Docker Volumes 🔹Сохранение данных: базы данных или файловые хранилища сохраняют данные даже после удаления контейнера. 🔹Общий доступ к данным: несколько контейнеров могут использовать общий том. 🔹Разработка: привязанные тома позволяют разрабатывать без пересборки контейнеров, так как код обновляется на лету. 🔹Резервное копирование и миграция: данные тома можно скопировать с одного хоста на другой.

💡 Совет дня по Linux 🐧 В Linux оператор конвейера (|) полезен, когда нужно направить вывод одной команды на вход другой для
💡 Совет дня по Linux 🐧 В Linux оператор конвейера (|) полезен, когда нужно направить вывод одной команды на вход другой для дальнейшей обработки:
$ cat data.txt | grep "No such file"
Однако это не перенаправляет ошибки. Если файл не существует, команда grep не даст результата. Что если нужно перенаправить и обработать как ошибки, так и обычный вывод? 🤔 Здесь на помощь приходит оператор перенаправления |&. Этот оператор направляет как стандартный вывод (stdout), так и стандартные ошибки (stderr) первой команды через конвейер на стандартный ввод (stdin) второй команды. Посмотрите на следующий пример:
$ cat data.txt |& grep "No such file"
Обратите внимание на разницу: команда grep смогла найти совпадение. Оператор |& в bash является сокращением для оператора перенаправления 2>&1 |:
$ cmd-1  2>&1  |  cmd-2
👉 DevOps Portal

🎄Как стать айтишником в 2025 году? Можно самому пытаться найти крупицы полезной инфы через сломанный поиск Гугла, можно полу
🎄Как стать айтишником в 2025 году? Можно самому пытаться найти крупицы полезной инфы через сломанный поиск Гугла, можно получать ответы от ChatGPT с ошибками... А можно воспользоваться Базой Знаний, где опытные айтишники уже отобрали за вас все материалы. И для вашего удобства поделили их на категории: 🖥 Python: @python_baza 👩‍💻 Frontend: @frontend_baza 👩‍💻 Backend: @backend_baza 🎨 Дизайн: @design_baza 📚 Книги: @archive_baza 👩‍💻 Топ GitHub: @main_it_baza ⏲️ Ссылки будут активны 48 часов — успей начать Новый год правильно вместе с Базой Знаний 🚀