Media is too big
VIEW IN TELEGRAM
🐳 Docker и Docker Compose: От новичка до профи за 4 часа!
Привет, будущий Docker-мастер! Готов погрузиться в мир контейнеров и микросервисов? Держись крепче, мы отправляемся в эпическое путешествие по Docker и Docker Compose!
Что ты узнаешь:
06:16 Зачем нужен Docker - проблемы разработки и деплоймента
13:22 VM (виртуальная машина) разница с Docker
17:38 Принцип работы Docker
23:22 Docker образ и Docker контейнер
28:19 Слои образа (теория о принципе)
32:49 Начало установки и нюансы о Docker-Desktop
37:24 Установка Docker на Mac
38:56 Установка Docker на Windows
46:32 Установка Docker на Linux
50:40 Проверка работоспособности Docker Desktop
55:15 Базовые команды Docker с образами и контейнерами
1:16:19 Настройка потребления ресурсов Docker-Desktop
1:17:17 Работаем с образом Ubuntu
1:26:35 Интерактивный терминал контейнера Ubuntu
1:27:39 О файловой системе контейнеров
1:32:21 Установка компонентов в контейнер
1:35:33 Dockerfile. Сборка своего образа и установка компонентов
1:45:31 Уменьшаем количество слоев в образе
1:51:46 Потребление ресурсов контейнерами Live stats
1:57:06 Слои контейнера и сборка образа! из контейнера
2:01:20 Образ Python
2:02:34 Упаковка файлов(проекта) в образ (на простом примере)
2:11:06 О буферизации потока вывода
2:15:01 Разница между RUN и CMD
2:15:37 Очистка системы Docker от кеша, ненужных образов и прочего мусора
2:18:43 Установка доп библиотек в образ из requirements.txt или package.json...
2:19:41 Обзор кода (чекаем пару BTC/USDT)))
2:23:03 Правило структуры Dockerfile (правильной очередности слоев)
2:26:20 Образ Nginx
2:31:22 Монтирование портов и ip адреса хоста к контейнеру Docker
2:38:32 Поработаем в Linux терминале контейнера, редактор Nano
2:51:43 Монтирование директорий хоста к контейнеру
3:00:46 Docker Compose (первый пример с Nginx, портами и директориями)
3:10:13 Сборка руками 4 контейнера Mongo + Mongo-Express + Flask + API Checker
3:12:18 Создание сетей
3:28:05 Онлайн график стоимости (смотрим что получилось))
3:30:03 Compose сборка 4 контейнера Mongo + Mongo-Express + Flask + API Checker
Бонус: Ты научишься создавать полноценное приложение с базой данных, парсером и веб-интерфейсом!
Источник: https://www.youtube.com/watch?v=wgA3yntF_ek
Исходники для этого видео: https://github.com/PythonHubStudio/docker-course-demo
____________________
Дополнительный материал:
🧠 - Linux для продвинутых: Как проверить, использует ли ваша система systemd?
🧠 - Linux Deep Dive: PID 1 и его детище - systemd
🧠 - Linux Command Mastery: Управление службами с помощью systemd
#Linux_youtube @LinuxSkill #Docker #Compose #video #видео
Привет, будущий Docker-мастер! Готов погрузиться в мир контейнеров и микросервисов? Держись крепче, мы отправляемся в эпическое путешествие по Docker и Docker Compose!
Что ты узнаешь:
06:16 Зачем нужен Docker - проблемы разработки и деплоймента
13:22 VM (виртуальная машина) разница с Docker
17:38 Принцип работы Docker
23:22 Docker образ и Docker контейнер
28:19 Слои образа (теория о принципе)
32:49 Начало установки и нюансы о Docker-Desktop
37:24 Установка Docker на Mac
38:56 Установка Docker на Windows
46:32 Установка Docker на Linux
50:40 Проверка работоспособности Docker Desktop
55:15 Базовые команды Docker с образами и контейнерами
1:16:19 Настройка потребления ресурсов Docker-Desktop
1:17:17 Работаем с образом Ubuntu
1:26:35 Интерактивный терминал контейнера Ubuntu
1:27:39 О файловой системе контейнеров
1:32:21 Установка компонентов в контейнер
1:35:33 Dockerfile. Сборка своего образа и установка компонентов
1:45:31 Уменьшаем количество слоев в образе
1:51:46 Потребление ресурсов контейнерами Live stats
1:57:06 Слои контейнера и сборка образа! из контейнера
2:01:20 Образ Python
2:02:34 Упаковка файлов(проекта) в образ (на простом примере)
2:11:06 О буферизации потока вывода
2:15:01 Разница между RUN и CMD
2:15:37 Очистка системы Docker от кеша, ненужных образов и прочего мусора
2:18:43 Установка доп библиотек в образ из requirements.txt или package.json...
2:19:41 Обзор кода (чекаем пару BTC/USDT)))
2:23:03 Правило структуры Dockerfile (правильной очередности слоев)
2:26:20 Образ Nginx
2:31:22 Монтирование портов и ip адреса хоста к контейнеру Docker
2:38:32 Поработаем в Linux терминале контейнера, редактор Nano
2:51:43 Монтирование директорий хоста к контейнеру
3:00:46 Docker Compose (первый пример с Nginx, портами и директориями)
3:10:13 Сборка руками 4 контейнера Mongo + Mongo-Express + Flask + API Checker
3:12:18 Создание сетей
3:28:05 Онлайн график стоимости (смотрим что получилось))
3:30:03 Compose сборка 4 контейнера Mongo + Mongo-Express + Flask + API Checker
Бонус: Ты научишься создавать полноценное приложение с базой данных, парсером и веб-интерфейсом!
Источник: https://www.youtube.com/watch?v=wgA3yntF_ek
Исходники для этого видео: https://github.com/PythonHubStudio/docker-course-demo
____________________
Дополнительный материал:
🧠 - Linux для продвинутых: Как проверить, использует ли ваша система systemd?
🧠 - Linux Deep Dive: PID 1 и его детище - systemd
🧠 - Linux Command Mastery: Управление службами с помощью systemd
#Linux_youtube @LinuxSkill #Docker #Compose #video #видео
👍30🔥5
Media is too big
VIEW IN TELEGRAM
🎥 Как уменьшить размер образа Docker: от 1,2 ГБ до 10 МБ
В этом видео мы расскажем, как оптимизировать образы Docker, чтобы сократить их размер и повысить эффективность. Узнай, как это влияет на стоимость хранения, сроки развертывания и безопасность.
1. Введение и важность уменьшения размера (00:00):
- Уменьшение размера образа Docker с 1,2 ГБ до 10 МБ.
- Советы применимы к любым образам Docker.
2. Выбор базового изображения (00:15):
- Использование образа Alpine для сокращения размера.
- Alpine содержит только необходимые компоненты для запуска приложений.
3. Кэширование слоев (01:40):
- Кэширование слоев для ускорения сборки.
- Оптимизация файла Docker для использования кэширования.
4. Удаление ненужных файлов (03:05):
- Использование Docker Ignore для удаления ненужных файлов.
- Важность очистки кэша и удаления временных файлов.
5. Многоэтапная сборка (05:27):
- Использование многоэтапной сборки для оптимизации размера образа.
- Пример с разделением процесса сборки на этапы.
6. Инструменты для оптимизации Docker (06:26):
- Использование инструментов, таких как Dive и Slim, для оптимизации и отладки сборок.
- Slim позволяет уменьшить размер образа до 30 раз.
Оптимизация образов Docker — это ключ к эффективному управлению ресурсами и повышению безопасности. Применяйте эти советы и инструменты, чтобы улучшить свои Docker-сборки!
📩 Завтра: Когда нужно оборачивать переменные в кавычки в shell скрипте?
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Не трать время на распаковку! Вот как Zcat покажет всё на лету!
🧠 - Ускоряем загрузку Linux: Разбираемся с systemd-analyze
🧠 - Как использовать команду awk в Linux: обработка текста в пару команд
#Linux_youtube @LinuxSkill #Docker #Optimization #SysAdmin #DevOps
В этом видео мы расскажем, как оптимизировать образы Docker, чтобы сократить их размер и повысить эффективность. Узнай, как это влияет на стоимость хранения, сроки развертывания и безопасность.
1. Введение и важность уменьшения размера (00:00):
- Уменьшение размера образа Docker с 1,2 ГБ до 10 МБ.
- Советы применимы к любым образам Docker.
2. Выбор базового изображения (00:15):
- Использование образа Alpine для сокращения размера.
- Alpine содержит только необходимые компоненты для запуска приложений.
3. Кэширование слоев (01:40):
- Кэширование слоев для ускорения сборки.
- Оптимизация файла Docker для использования кэширования.
4. Удаление ненужных файлов (03:05):
- Использование Docker Ignore для удаления ненужных файлов.
- Важность очистки кэша и удаления временных файлов.
5. Многоэтапная сборка (05:27):
- Использование многоэтапной сборки для оптимизации размера образа.
- Пример с разделением процесса сборки на этапы.
6. Инструменты для оптимизации Docker (06:26):
- Использование инструментов, таких как Dive и Slim, для оптимизации и отладки сборок.
- Slim позволяет уменьшить размер образа до 30 раз.
Оптимизация образов Docker — это ключ к эффективному управлению ресурсами и повышению безопасности. Применяйте эти советы и инструменты, чтобы улучшить свои Docker-сборки!
📩 Завтра: Когда нужно оборачивать переменные в кавычки в shell скрипте?
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Не трать время на распаковку! Вот как Zcat покажет всё на лету!
🧠 - Ускоряем загрузку Linux: Разбираемся с systemd-analyze
🧠 - Как использовать команду awk в Linux: обработка текста в пару команд
#Linux_youtube @LinuxSkill #Docker #Optimization #SysAdmin #DevOps
👍12🔥1
🚀 Топ команды для DevOps: Что спрашивают на собеседованиях?
Привет, линукс-мастер! Сегодня я расскажу тебе о командах, которые часто спрашивают на собеседованиях для DevOps-инженеров. Эти команды помогут уверенно чувствовать себя на интервью и в повседневной работе.
Давай разберемся, что нужно знать 👇
🔧 Git
🐳 Docker
☸️ Kubernetes (kubectl)
🤖 Ansible
🌍 Terraform
🐧 Linux (bash)
🔄 CI/CD (GitLab, Jenkins, GitHub Actions)
GitLab CI/CD:
Jenkins:
GitHub Actions:
📌 Эти команды охватывают управление версиями, контейнеризацию, оркестрацию, автоматизацию и администрирование.
Изучи, запомни, сохрани — и чувствуй себя уверенно на любом собесе!
📩 Завтра: Укроти символические ссылки с namei -n!
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Секреты Zabbix: Мониторинг веб-серверов без проблем
🧠 - Мониторинг серверов с помощью Zabbix: Настройка мониторинга SMART-дисков через Zabbix
🧠 - Измени группу файлов за секунды с помощью chgrp
#Linux_Mastery @LinuxSkill #devops #GitHub #Jenkins #GitLab #bash #Kubernetes #Docker #Git
Привет, линукс-мастер! Сегодня я расскажу тебе о командах, которые часто спрашивают на собеседованиях для DevOps-инженеров. Эти команды помогут уверенно чувствовать себя на интервью и в повседневной работе.
Давай разберемся, что нужно знать 👇
🔧 Git
git init # Инициализация нового репозитория
git clone <url> # Клонирование репозитория
git add <file> # Добавление файла к коммиту
git commit -m "сообщение" # Создание коммита
git push # Отправка изменений
git pull # Получение изменений
git branch # Список веток
git checkout <branch> # Переключение ветки
🐳 Docker
docker build -t <image_name> . # Создание образа
docker run -d -p 80:80 <image_name> # Запуск контейнера
docker ps # Список контейнеров
docker stop <container_id> # Остановка контейнера
docker rm <container_id> # Удаление контейнера
docker images # Список образов
docker rmi <image_id> # Удаление образа
☸️ Kubernetes (kubectl)
kubectl get pods # Список подов
kubectl get services # Список сервисов
kubectl describe pod <pod_name> # Информация о поде
kubectl logs <pod_name> # Логи пода
kubectl apply -f <file.yaml> # Применение конфигурации
kubectl delete pod <pod_name> # Удаление пода
kubectl exec -it <pod_name> -- /bin/bash # Подключение к поду
🤖 Ansible
ansible-playbook <playbook.yml> # Запуск плейбука
ansible <host> -m ping # Проверка хостов
ansible <host> -m command -a 'uptime' # Выполнение команды
ansible-galaxy install <role> # Установка роли
🌍 Terraform
terraform init # Инициализация
terraform plan # Планирование изменений
terraform apply # Применение изменений
terraform destroy # Удаление ресурсов
🐧 Linux (bash)
ls # Список файлов
cd <directory> # Переход в каталог
pwd # Текущий каталог
cp <source> <destination> # Копирование
mv <source> <destination> # Перемещение
rm <file> # Удаление
mkdir <directory> # Создание каталога
grep <pattern> <file> # Поиск шаблона
find <directory> -name <pattern> # Поиск файлов
chmod <permissions> <file> # Изменение прав
chown <user>:<group> <file> # Изменение владельца
top # Мониторинг процессов
ps aux # Список процессов
🔄 CI/CD (GitLab, Jenkins, GitHub Actions)
GitLab CI/CD:
.gitlab-ci.yml
gitlab-runner register
Jenkins:
jenkins-cli.jar
jenkins-jobs create <job_name>
GitHub Actions:
.github/workflows/<workflow>.yml
workflow_dispatch
📌 Эти команды охватывают управление версиями, контейнеризацию, оркестрацию, автоматизацию и администрирование.
Изучи, запомни, сохрани — и чувствуй себя уверенно на любом собесе!
📩 Завтра: Укроти символические ссылки с namei -n!
Включи 🔔 чтобы не пропустить!
____________________
Дополнительный материал:
🧠 - Секреты Zabbix: Мониторинг веб-серверов без проблем
🧠 - Мониторинг серверов с помощью Zabbix: Настройка мониторинга SMART-дисков через Zabbix
🧠 - Измени группу файлов за секунды с помощью chgrp
#Linux_Mastery @LinuxSkill #devops #GitHub #Jenkins #GitLab #bash #Kubernetes #Docker #Git
Telegram
Linux Skill - Освой Linux c нуля до DevOps
Секреты Zabbix: Мониторинг веб-серверов без проблем
Zabbix — это мощное решение для мониторинга, которое позволяет отслеживать состояние серверов и служб в реальном времени. В этом посте мы рассмотрим, как настроить Zabbix для мониторинга веб-серверов.
…
Zabbix — это мощное решение для мониторинга, которое позволяет отслеживать состояние серверов и служб в реальном времени. В этом посте мы рассмотрим, как настроить Zabbix для мониторинга веб-серверов.
…
👍17🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
💥 Docker образ весит гигабайт? Уменьшаем в 100 раз!
Эй, борец с дисковым пространством!
Твои Docker образы раздулись до неприличных размеров? Автор показывает, как с помощью multistage building сжать образ с сотен мегабайт до 8MB!
📹 План оптимизации (таймкоды):
00:00 — Проблема больших образов
00:56 — Что такое multistage building
01:48 — Копируем только нужное
02:53 — Alpine Linux — секретное оружие
03:13 — Собираем и тестируем
03:43 — Результат: 8MB вместо гигабайта!
04:38 — Требования и итоги
💡 Почему работает:
- Этап 1 — компиляция с полным SDK
- Этап 2 — только бинарник в Alpine
- Весь компилятор остаётся в промежуточном слое
- Финальный образ содержит только необходимое
🚀 Результат:
- ❌ Было: образ с компилятором, библиотеками, исходниками
- ✅ Стало: Alpine + один бинарник = 8MB
📝 Требования:
Docker версии 17.05 и выше
Теперь твои образы летают, а registry не плачет!
🌐 Источник: YouTube
____________________
Дополнительный материал:
🧠 - Увеличение времени кэширования пароля в sudo: Пошаговое руководство
🧠 - Настройка индивидуальных конфигураций для пользователей sudo: Пошаговое руководство
🧠 - Защитите свои данные в Linux: Основы разрешений файлов
#Linux_youtube #docker #optimization #multistage #alpine #devops #video
Эй, борец с дисковым пространством!
Твои Docker образы раздулись до неприличных размеров? Автор показывает, как с помощью multistage building сжать образ с сотен мегабайт до 8MB!
📹 План оптимизации (таймкоды):
00:00 — Проблема больших образов
00:56 — Что такое multistage building
01:48 — Копируем только нужное
02:53 — Alpine Linux — секретное оружие
03:13 — Собираем и тестируем
03:43 — Результат: 8MB вместо гигабайта!
04:38 — Требования и итоги
💡 Почему работает:
- Этап 1 — компиляция с полным SDK
- Этап 2 — только бинарник в Alpine
- Весь компилятор остаётся в промежуточном слое
- Финальный образ содержит только необходимое
🚀 Результат:
- ❌ Было: образ с компилятором, библиотеками, исходниками
- ✅ Стало: Alpine + один бинарник = 8MB
📝 Требования:
Docker версии 17.05 и выше
Теперь твои образы летают, а registry не плачет!
🌐 Источник: YouTube
____________________
Дополнительный материал:
🧠 - Увеличение времени кэширования пароля в sudo: Пошаговое руководство
🧠 - Настройка индивидуальных конфигураций для пользователей sudo: Пошаговое руководство
🧠 - Защитите свои данные в Linux: Основы разрешений файлов
#Linux_youtube #docker #optimization #multistage #alpine #devops #video
👍10🔥1
🔥 20 Docker-команд = 90% всех задач. Проверено!
Эй, контейнерный кудесник!
Накопил за годы работы идеальный набор Docker-команд. Никакой воды — только то, что использую каждый день. Сохраняй и забудь про поиски в документации!
🚀 Быстрый старт:
📦 Управление контейнерами:
Запуск с автостартом:
Просмотр контейнеров:
Удаление:
Массовые операции:
🖼️ Работа с образами:
🔍 Отладка и мониторинг:
Войти в контейнер:
Логи:
Мониторинг ресурсов:
Процессы в контейнере:
🛠️ Продвинутые команды:
Детальная информация:
Управление местом:
Копирование файлов:
Экспорт контейнера:
📚 Бонус — полезные темы:
🔧 Инструменты: Portainer, ctop, cdebug
🛡️ Безопасность: Trivy, Dockle, CIS рекомендации
📊 Мониторинг: Zabbix, Prometheus
🗃️ Бэкапы: docker-volume-backup
Теперь у тебя есть всё для работы с Docker. Эти команды покрывают 90% повседневных задач!
____________________
Дополнительный материал:
🧠 - Открытый мир Linux: Сокровищница инструментов для системных администраторов
🧠 - Стартуйте в IT с Бесплатным курсом по Linux: от Нуля до DevOps
🧠 - От /etc/passwd к централизованному управлению: Как Linux трансформировал учетные записи
#Linux_Mastery #docker #DevOps #containers #Linux #подборка #automation
Эй, контейнерный кудесник!
Накопил за годы работы идеальный набор Docker-команд. Никакой воды — только то, что использую каждый день. Сохраняй и забудь про поиски в документации!
🚀 Быстрый старт:
# Установка одной строкой
curl -o - https://get.docker.com | bash -
📦 Управление контейнерами:
Запуск с автостартом:
docker run -d -p 80:80 --restart always --name nginx-proxy nginx
Просмотр контейнеров:
docker ps # запущенные
docker ps -a # все
Удаление:
docker rm nginx-proxy # остановленный
docker rm -f nginx-proxy # принудительно
Массовые операции:
# Остановить все
docker stop $(docker ps -a -q)
# Удалить все
docker rm $(docker ps -a -q)
🖼️ Работа с образами:
docker images # список
docker rmi nginx # удалить один
docker rmi $(docker images -a -q) # удалить все
🔍 Отладка и мониторинг:
Войти в контейнер:
docker exec -it nginx-proxy bash
Логи:
docker logs nginx-proxy # все логи
docker logs -n 100 nginx-proxy # последние 100 строк
docker logs -f nginx-proxy # следить в реальном времени
Мониторинг ресурсов:
docker stats nginx-proxy
docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
Процессы в контейнере:
docker top nginx-proxy
🛠️ Продвинутые команды:
Детальная информация:
docker inspect nginx-proxy
docker inspect -f '{{ .NetworkSettings.Networks.bridge.IPAddress }}' nginx-proxy
docker inspect --format '{{json .Mounts}}' grafana | jq .
Управление местом:
docker system df # занятое место
docker system prune # очистка
Копирование файлов:
# Из контейнера
docker cp nginx-proxy:/etc/nginx/nginx.conf ~/nginx
# В контейнер
docker cp ~/nginx/nginx.conf nginx-proxy:/etc/nginx
Экспорт контейнера:
docker export nginx-proxy -o ~/nginx-proxy.tar.gz
📚 Бонус — полезные темы:
🔧 Инструменты: Portainer, ctop, cdebug
🛡️ Безопасность: Trivy, Dockle, CIS рекомендации
📊 Мониторинг: Zabbix, Prometheus
🗃️ Бэкапы: docker-volume-backup
Теперь у тебя есть всё для работы с Docker. Эти команды покрывают 90% повседневных задач!
____________________
Дополнительный материал:
🧠 - Открытый мир Linux: Сокровищница инструментов для системных администраторов
🧠 - Стартуйте в IT с Бесплатным курсом по Linux: от Нуля до DevOps
🧠 - От /etc/passwd к централизованному управлению: Как Linux трансформировал учетные записи
#Linux_Mastery #docker #DevOps #containers #Linux #подборка #automation
Telegram
Linux Skill - Освой Linux c нуля до DevOps
🌟🐧 ""Открытый мир Linux: Сокровищница инструментов для системных администраторов"" 🛠️💼
Привет, мастера системного администрирования и поклонники Linux! Сегодня хотим поделиться с вами впечатляющим списком open source инструментов, которые заслуживают вашего…
Привет, мастера системного администрирования и поклонники Linux! Сегодня хотим поделиться с вами впечатляющим списком open source инструментов, которые заслуживают вашего…
👍12
Media is too big
VIEW IN TELEGRAM
🔥 Kubernetes обязателен для DevOps в 2025. Вот почему
Привет, будущий мастер оркестрации!
Kubernetes стал стандартом для средних и крупных компаний. Без него — никуда. Автор за 100 минут проводит от основ до запуска первого приложения в кластере. Практика на реальном проекте!
📹 Таймкоды:
00:00 — Почему K8s стал стандартом
01:10 — Контейнеризация vs традиционный деплой
03:50 — K8s vs Docker Swarm: кто победил
07:59 — Кому подходит курс
09:40 — Проект: сокращатель ссылок
15:03 — Настройка окружения
18:42 — Установка Kubernetes
23:10 — macOS: Homebrew + Minikube
29:39 — Linux: пошаговая установка
33:23 — Windows: Hyper-V setup
43:07 — Pod — основа всего
45:02 — Services: постоянный доступ
55:07 — Императивный vs Декларативный
01:00:52 — YAML: основы синтаксиса
01:12:08 — Первая конфигурация Pod
01:29:06 — NodePort Service
01:38:50 — Запуск и проверка
01:44:20 — Жизненный цикл Pod
🚀 Результат:
За 1.5 часа запустишь приложение в Kubernetes, поймёшь основные концепции и будешь готов к работе с K8s в продакшене.
🌐 Источник: YouTube - PurpleSchool | Anton Larichev
____________________
Дополнительный материал:
🧠 - SELinux: От Секретного Проекта до Корпоративного Стража
🧠 - Linux Mastery: Настройка разрешений каталогов с помощью chmod
🧠 - Разгадываем тайны архитектуры: Что такое i686 в Ubuntu
#Linux_youtube #kubernetes #k8s #docker #devops #video #yaml
Привет, будущий мастер оркестрации!
Kubernetes стал стандартом для средних и крупных компаний. Без него — никуда. Автор за 100 минут проводит от основ до запуска первого приложения в кластере. Практика на реальном проекте!
📹 Таймкоды:
00:00 — Почему K8s стал стандартом
01:10 — Контейнеризация vs традиционный деплой
03:50 — K8s vs Docker Swarm: кто победил
07:59 — Кому подходит курс
09:40 — Проект: сокращатель ссылок
15:03 — Настройка окружения
18:42 — Установка Kubernetes
23:10 — macOS: Homebrew + Minikube
29:39 — Linux: пошаговая установка
33:23 — Windows: Hyper-V setup
43:07 — Pod — основа всего
45:02 — Services: постоянный доступ
55:07 — Императивный vs Декларативный
01:00:52 — YAML: основы синтаксиса
01:12:08 — Первая конфигурация Pod
01:29:06 — NodePort Service
01:38:50 — Запуск и проверка
01:44:20 — Жизненный цикл Pod
🚀 Результат:
За 1.5 часа запустишь приложение в Kubernetes, поймёшь основные концепции и будешь готов к работе с K8s в продакшене.
🌐 Источник: YouTube - PurpleSchool | Anton Larichev
____________________
Дополнительный материал:
🧠 - SELinux: От Секретного Проекта до Корпоративного Стража
🧠 - Linux Mastery: Настройка разрешений каталогов с помощью chmod
🧠 - Разгадываем тайны архитектуры: Что такое i686 в Ubuntu
#Linux_youtube #kubernetes #k8s #docker #devops #video #yaml
👍11
📊 Мониторинг без боли: Prometheus + Grafana одной командой
Привет, строитель мониторинга!
Prometheus проще Zabbix'а в разы — никаких агентов, баз данных, сложных конфигов. 10 минут и у тебя работающий мониторинг с красивыми графиками. Держи готовую шпаргалку.
Установка Docker
Подготовка файлов
Docker-compose конфиг
Создай файл
Конфиг Prometheus
Создай файл
Запуск всего стека
Настройка Grafana
1. Открой
2. Логин:
3. Connections → Data sources → Add Prometheus
4. URL:
5. Dashboards → New → Import
6. Введи ID:
Добавление удалённого сервера
На удалённом сервере запусти exporter:
Добавь в
Перезапусти:
💡 Результат: полноценный мониторинг с графиками CPU, RAM, диска, сети. Всё за 10 минут без танцев с бубном!
❗️ Важно: в проде закрой порты файрволом — оставь доступ только нужным IP.
____________________
Дополнительный материал:
🧠 - Мастерство Управления Правами в Linux: От Новичка до Профи
🧠 - Максимизируйте безопасность с минимальными разрешениями в Linux
🧠 - От Slackware до Pacman: Путешествие Систем Управления Пакетами в Linux
#Linux_Mastery #мониторинг #prometheus #devops #grafana #docker
Привет, строитель мониторинга!
Prometheus проще Zabbix'а в разы — никаких агентов, баз данных, сложных конфигов. 10 минут и у тебя работающий мониторинг с красивыми графиками. Держи готовую шпаргалку.
Установка Docker
# curl https://get.docker.com | bash -
Подготовка файлов
# mkdir ~/prometheus && cd ~/prometheus
# touch docker-compose.yml
Docker-compose конфиг
Создай файл
docker-compose.yml:version: '3.9'
networks:
monitoring:
driver: bridge
volumes:
prometheus_data: {}
services:
prometheus:
image: prom/prometheus:latest
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
- prometheus_data:/prometheus
container_name: prometheus
hostname: prometheus
command:
- '--config.file=/etc/prometheus/prometheus.yml'
- '--storage.tsdb.path=/prometheus'
expose:
- 9090
restart: unless-stopped
environment:
TZ: "Europe/Moscow"
networks:
- monitoring
node-exporter:
image: prom/node-exporter
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
container_name: exporter
hostname: exporter
command:
- '--path.procfs=/host/proc'
- '--path.rootfs=/rootfs'
- '--path.sysfs=/host/sys'
- '--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)'
expose:
- 9100
restart: unless-stopped
environment:
TZ: "Europe/Moscow"
networks:
- monitoring
grafana:
image: grafana/grafana
user: root
depends_on:
- prometheus
ports:
- 3000:3000
volumes:
- ./grafana:/var/lib/grafana
- ./grafana/provisioning/:/etc/grafana/provisioning/
container_name: grafana
hostname: grafana
restart: unless-stopped
environment:
TZ: "Europe/Moscow"
networks:
- monitoring
Конфиг Prometheus
Создай файл
prometheus.yml:scrape_configs:
- job_name: 'prometheus'
scrape_interval: 5s
scrape_timeout: 5s
static_configs:
- targets: ['localhost:9090']
- job_name: 'node-local'
scrape_interval: 5s
static_configs:
- targets: ['node-exporter:9100']
Запуск всего стека
# docker-compose up -d
Настройка Grafana
1. Открой
https://твой-ip:30002. Логин:
admin / admin3. Connections → Data sources → Add Prometheus
4. URL:
https://prometheus:90905. Dashboards → New → Import
6. Введи ID:
1860 (готовый дашборд для Node Exporter)Добавление удалённого сервера
На удалённом сервере запусти exporter:
# docker run -d --net="host" --pid="host" -v "/:/host:ro,rslave" \
prom/node-exporter:latest --path.rootfs=/host
# Проверка
# ss -tulnp | grep 9100
Добавь в
prometheus.yml:- job_name: 'node-remote'
scrape_interval: 5s
static_configs:
- targets: ['10.20.1.56:9100']
Перезапусти:
# docker compose restart
💡 Результат: полноценный мониторинг с графиками CPU, RAM, диска, сети. Всё за 10 минут без танцев с бубном!
❗️ Важно: в проде закрой порты файрволом — оставь доступ только нужным IP.
____________________
Дополнительный материал:
🧠 - Мастерство Управления Правами в Linux: От Новичка до Профи
🧠 - Максимизируйте безопасность с минимальными разрешениями в Linux
🧠 - От Slackware до Pacman: Путешествие Систем Управления Пакетами в Linux
#Linux_Mastery #мониторинг #prometheus #devops #grafana #docker
Telegram
Linux Skill - Освой Linux c нуля до DevOps
🔑🛡️ Мастерство Управления Правами в Linux: От Новичка до Профи! 🛡️🔑
Привет, энтузиасты Linux и защитники цифрового мира! Сегодня мы погрузимся в основы управления правами в Linux. Это руководство раскроет вам все о виде прав, как их изменять, особенности…
Привет, энтузиасты Linux и защитники цифрового мира! Сегодня мы погрузимся в основы управления правами в Linux. Это руководство раскроет вам все о виде прав, как их изменять, особенности…
👍10🔥3
🐳 Почему ты не можешь просто скопировать файл из Docker образа
Привет, укротитель контейнеров!
Знакомая боль: нужен один файл из Docker образа, но запускать контейнер не хочется. Docker почему-то не даёт простого решения. Рассказываю рабочий способ и показываю инструмент для анализа образов.
Извлекаем файл из образа
Скачиваем образ и создаём контейнер БЕЗ запуска:
Теперь копируем нужный файл:
Или выгружаем весь образ:
Dive — рентген для образов
Утилита показывает слои образа и что в каждом слое изменилось. Запускаем прямо в Docker:
Создаём alias для удобства:
Теперь просто:
Проверка раздутости образа
Вместо
Dive покажет:
- Размер каждого слоя
- Что добавилось/удалилось
- Efficiency Score образа
- Wasted Space (лишнее место)
💡 Фишка: встрой проверку в CI/CD — автоматически отлавливай неоптимальные образы.
Итог: Docker создан для изоляции, поэтому прямого доступа к файлам нет. Но способы есть — используй их правильно.
____________________
Дополнительный материал:
🧠 - Linux Essentials: Понимание относительных и абсолютных путей к файлам
🧠 - Открытие Rancher: Путешествие от Стартапа до Лидера в Контейнеризации
🧠 - Осваиваем Docker: Искусство Сборки Образов и Управления Сетью
#Linux_Mastery #docker #devops #containers #optimization
Привет, укротитель контейнеров!
Знакомая боль: нужен один файл из Docker образа, но запускать контейнер не хочется. Docker почему-то не даёт простого решения. Рассказываю рабочий способ и показываю инструмент для анализа образов.
Извлекаем файл из образа
Скачиваем образ и создаём контейнер БЕЗ запуска:
# docker pull nginx:latest
# docker create --name nginx nginx:latest
Теперь копируем нужный файл:
# docker cp nginx:/docker-entrypoint.d/30-tune-worker-processes.sh ~/
Или выгружаем весь образ:
# docker export nginx -o ~/nginx-docker.tar.gz
Dive — рентген для образов
Утилита показывает слои образа и что в каждом слое изменилось. Запускаем прямо в Docker:
# docker run -ti --rm -v /var/run/docker.sock:/var/run/docker.sock \
wagoodman/dive nginx:latest
Создаём alias для удобства:
alias dive="docker run -ti --rm -v /var/run/docker.sock:/var/run/docker.sock wagoodman/dive"
Теперь просто:
# dive nginx:latest
Проверка раздутости образа
Вместо
docker build используй dive build — получишь анализ эффективности сборки:# dive build -t myapp:latest .
Dive покажет:
- Размер каждого слоя
- Что добавилось/удалилось
- Efficiency Score образа
- Wasted Space (лишнее место)
💡 Фишка: встрой проверку в CI/CD — автоматически отлавливай неоптимальные образы.
Итог: Docker создан для изоляции, поэтому прямого доступа к файлам нет. Но способы есть — используй их правильно.
____________________
Дополнительный материал:
🧠 - Linux Essentials: Понимание относительных и абсолютных путей к файлам
🧠 - Открытие Rancher: Путешествие от Стартапа до Лидера в Контейнеризации
🧠 - Осваиваем Docker: Искусство Сборки Образов и Управления Сетью
#Linux_Mastery #docker #devops #containers #optimization
Telegram
Linux Skill - Освой Linux c нуля до DevOps
🚀🐧 Linux Essentials: Понимание относительных и абсолютных путей к файлам! 🗂️🔍
Привет, исследователи Linux и мастера файловой системы! Сегодня мы разберемся в одной из фундаментальных концепций Linux - относительных и абсолютных путях к файлам. Это знание…
Привет, исследователи Linux и мастера файловой системы! Сегодня мы разберемся в одной из фундаментальных концепций Linux - относительных и абсолютных путях к файлам. Это знание…
👍15
🔍 Как объединить логи всех контейнеров в одном месте
Привет, укротитель логов!
Вчера в комментах подсказали инструмент logdy — теперь смотрю все логи через браузер. Один бинарник, никаких зависимостей. Показываю все режимы работы.
Установка за 10 секунд
## Простой режим — один лог
Или так:
Открывай
Логи Docker контейнера
Объединение нескольких контейнеров
Запускаем logdy в режиме сокетов:
Направляем логи каждого контейнера:
Теперь все логи в одном интерфейсе с фильтрацией по источнику!
Для локальной разработки
В VS Code:
API режим с токеном
Запускаем с API:
Отправляем логи через curl:
Режим stdin для пайпов
Фишки logdy:
- Парсит JSON логи автоматически
- Разбивает на колонки
- Фильтрация и поиск в реальном времени
- Защита паролем через ключи запуска
- Экспорт логов
💡 Где выручает:
- Отладка микросервисов
- Мониторинг нескольких контейнеров
- Быстрый просмотр логов без SSH
- Демо для заказчика
Итог: один инструмент покрывает 90% задач с логами. Особенно круто для Docker-окружения.
____________________
Дополнительный материал:
🧠 - Путешествие LXD: Как Контейнеры LXD Переопределили Виртуализацию
🧠 - Удаление файлов и каталогов без стресса
🧠 - Создание Docker Образов и Магия Сетей: От Одиночных Узлов до Docker Swarm
#Linux_Mastery #logs #devops #docker #monitoring #tools
Привет, укротитель логов!
Вчера в комментах подсказали инструмент logdy — теперь смотрю все логи через браузер. Один бинарник, никаких зависимостей. Показываю все режимы работы.
Установка за 10 секунд
# curl https://logdy.dev/install.sh | sh
## Простой режим — один лог
# tail -f /var/log/syslog | logdy --ui-ip=0.0.0.0
Или так:
# logdy --ui-ip=0.0.0.0 follow /var/log/syslog
Открывай
https://твой-ip:8080 — логи в браузере!Логи Docker контейнера
# docker logs 761965fa13b2 --follow | logdy --ui-ip=0.0.0.0
Объединение нескольких контейнеров
Запускаем logdy в режиме сокетов:
# logdy --ui-ip=0.0.0.0 socket 8123 8124
Направляем логи каждого контейнера:
# docker logs d20339949095 --follow | logdy forward 8123
# docker logs 761965fa13b2 --follow | logdy forward 8124
Теперь все логи в одном интерфейсе с фильтрацией по источнику!
Для локальной разработки
# node app.js | logdy
В VS Code:
Ctrl+Shift+P → "Simple Browser: Show" → https://localhost:8080API режим с токеном
Запускаем с API:
# logdy --ui-ip=0.0.0.0 --api-key=secrettoken
Отправляем логи через curl:
curl --location --request POST 'https://1.2.3.4:8080/api/log' \
--header 'Authorization: Bearer secrettoken' \
--header 'Content-Type: application/json' \
--data '{"logs": [{"log": "this is a log message as a string" }],"source":"machine identifier"}'
Режим stdin для пайпов
# logdy stdin
Фишки logdy:
- Парсит JSON логи автоматически
- Разбивает на колонки
- Фильтрация и поиск в реальном времени
- Защита паролем через ключи запуска
- Экспорт логов
💡 Где выручает:
- Отладка микросервисов
- Мониторинг нескольких контейнеров
- Быстрый просмотр логов без SSH
- Демо для заказчика
Итог: один инструмент покрывает 90% задач с логами. Особенно круто для Docker-окружения.
____________________
Дополнительный материал:
🧠 - Путешествие LXD: Как Контейнеры LXD Переопределили Виртуализацию
🧠 - Удаление файлов и каталогов без стресса
🧠 - Создание Docker Образов и Магия Сетей: От Одиночных Узлов до Docker Swarm
#Linux_Mastery #logs #devops #docker #monitoring #tools
Telegram
Linux Skill - Освой Linux c нуля до DevOps
#short_story
🌟📦 Путешествие LXD: Как Контейнеры LXD Переопределили Виртуализацию! 🚀🔐
В мире, где скорость разработки и развертывания приложений играет ключевую роль, одна технология выделяется своей мощью и гибкостью - LXD от Canonical. Это история о том…
🌟📦 Путешествие LXD: Как Контейнеры LXD Переопределили Виртуализацию! 🚀🔐
В мире, где скорость разработки и развертывания приложений играет ключевую роль, одна технология выделяется своей мощью и гибкостью - LXD от Canonical. Это история о том…
👍9🔥7
Media is too big
VIEW IN TELEGRAM
🔥 Как я ускорил поиск с 10 секунд до миллисекунд
Привет, цифровой архитектор!
Твой поиск по базе тормозит как трактор в болоте? Пользователи ждут результаты вечность, а ты не знаешь, как это починить? Сейчас покажу реальное решение.
📍 Таймкоды видео:
00:00 — Введение в Elasticsearch
02:05 — Почему обычный поиск тормозит
05:49 — Основные понятия: индексы, документы, запросы
07:09 — Установка через Docker
08:23 — Базовые команды GET, PUT, POST
10:51 — Добавление и обновление документов
14:19 — Настройка поиска и ранжирование
18:29 — Реальный пример: веб-приложение на Spring Boot
25:43 — Тестирование и результаты
🚀 Попробуй настроить у себя и сравни скорость!
🌐 Источник: https://youtu.be/vxE1aGTEnbE?si=1tTdg2QASMGfF6f_
____________________
Дополнительный материал:
🧠 - От простого до грандиозного: Путешествие Kubernetes в мире контейнеризации
🧠 - Linux Mastery: Управление разрешениями каталогов с помощью chmod
🧠 - Станьте мастером управления пользователями и группами в Linux с помощью команд adduser и addgroup
#Linux_youtube #Elasticsearch #DevOps #Search #Docker #Performance #Database
Привет, цифровой архитектор!
Твой поиск по базе тормозит как трактор в болоте? Пользователи ждут результаты вечность, а ты не знаешь, как это починить? Сейчас покажу реальное решение.
📍 Таймкоды видео:
00:00 — Введение в Elasticsearch
02:05 — Почему обычный поиск тормозит
05:49 — Основные понятия: индексы, документы, запросы
07:09 — Установка через Docker
08:23 — Базовые команды GET, PUT, POST
10:51 — Добавление и обновление документов
14:19 — Настройка поиска и ранжирование
18:29 — Реальный пример: веб-приложение на Spring Boot
25:43 — Тестирование и результаты
🚀 Попробуй настроить у себя и сравни скорость!
🌐 Источник: https://youtu.be/vxE1aGTEnbE?si=1tTdg2QASMGfF6f_
____________________
Дополнительный материал:
🧠 - От простого до грандиозного: Путешествие Kubernetes в мире контейнеризации
🧠 - Linux Mastery: Управление разрешениями каталогов с помощью chmod
🧠 - Станьте мастером управления пользователями и группами в Linux с помощью команд adduser и addgroup
#Linux_youtube #Elasticsearch #DevOps #Search #Docker #Performance #Database
🔥3
🔑 Уязвимость: Почему добавление в группу Docker равносильно
Привет, цифровой архитектор!
Ты, вероятно, сталкивался с советом, как избавиться от постоянного ввода
В этом посте разберем, почему добавлять пользователя в группу
📌 Ошибка: Запуск Docker без
Для удобства многие инженеры выполняют всего одну команду:
С этого момента любой член группы
🚨 Почему это критическая уязвимость?
Если пользователь может управлять Docker-демоном без ограничений, он может запустить контейнер, который способен:
1. Смонтировать корневую файловую систему хост-машины (например,
2. Получить полный доступ к
3. Выполнить любую команду от имени
В результате, член группы
💡 Вывод: Практика, которая ломает всё
Использование группы
Если ты используешь это решение, ты должен понимать, что любой злоумышленник, получивший доступ к этой учетной записи, получит безусловный доступ к хост-системе.
#Docker #Security #Linux #SysAdmin #DevOps
sudo su -Привет, цифровой архитектор!
Ты, вероятно, сталкивался с советом, как избавиться от постоянного ввода
sudo при работе с Docker. Решение простое: добавить своего пользователя в группу docker. Удобно? Да. Но это одна из самых критических ошибок безопасности в Linux!В этом посте разберем, почему добавлять пользователя в группу
docker равносильно вручению ему полных прав root на хост-машине.📌 Ошибка: Запуск Docker без
sudoДля удобства многие инженеры выполняют всего одну команду:
# Не делай так, если не понимаешь рисков!
sudo usermod -aG docker $(whoami)
С этого момента любой член группы
docker может выполнять команды Docker. Но проблема в том, что Docker-демон по умолчанию работает от имени root.🚨 Почему это критическая уязвимость?
Если пользователь может управлять Docker-демоном без ограничений, он может запустить контейнер, который способен:
1. Смонтировать корневую файловую систему хост-машины (например,
/) в контейнер.2. Получить полный доступ к
/etc/shadow (теневой файл паролей) и другим критическим системным файлам.3. Выполнить любую команду от имени
root на хосте.В результате, член группы
docker может легко повысить свои привилегии до суперпользователя, полностью обходя систему sudo.💡 Вывод: Практика, которая ломает всё
Использование группы
docker ломает фундаментальный принцип изоляции привилегий в Linux. Удобство не стоит безопасности.Если ты используешь это решение, ты должен понимать, что любой злоумышленник, получивший доступ к этой учетной записи, получит безусловный доступ к хост-системе.
#Docker #Security #Linux #SysAdmin #DevOps
👍22