DevOps Portal | Linux
Присоединяйтесь к нашему каналу и погрузитесь в мир 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.
В данном туториале максимально просто расскажу и покажу на практике как настроить автоматический выпуск сертификатов в локальном kubernetes так, что бы ваша локальная машина доверяла им. Я постарался написать его так, чтобы даже новичкам можно было настроить свой куб просто следуя данной инструкции👉 Читать 👉 DevOps Portal
$ docker build --build-arg BASE_IMAGE_TAG=20.04 -t my-image .
👉 DevOps Portal$ sudo apt update; notify-send "Обновление завершено" "Получение обновлений завершено"
Замените apt update на любую команду, выполнение которой займет некоторое время. Не забудьте сначала установить inotify-tools:
$ sudo apt install inotify-tools
👉 DevOps Portalgit 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 Portaldiff — полезный инструмент для поиска различий между файлами в терминале Linux. Однако, icdiff предлагает еще более удобное сравнение, выводя файлы бок о бок с цветным отображением изменений.
$ icdiff config-1 config-2
Результат выведет оба файла рядом, с выделением различий красным и зеленым цветами, что позволяет легко увидеть различия.
👉 DevOps Portaldocker 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-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/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
🔹Сохранение данных: базы данных или файловые хранилища сохраняют данные даже после удаления контейнера.
🔹Общий доступ к данным: несколько контейнеров могут использовать общий том.
🔹Разработка: привязанные тома позволяют разрабатывать без пересборки контейнеров, так как код обновляется на лету.
🔹Резервное копирование и миграция: данные тома можно скопировать с одного хоста на другой./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
🔹Сохранение данных: базы данных или файловые хранилища сохраняют данные даже после удаления контейнера.
🔹Общий доступ к данным: несколько контейнеров могут использовать общий том.
🔹Разработка: привязанные тома позволяют разрабатывать без пересборки контейнеров, так как код обновляется на лету.
🔹Резервное копирование и миграция: данные тома можно скопировать с одного хоста на другой.$ 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
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
