fa
Feedback
DeVops Библиотека

DeVops Библиотека

رفتن به کانال در Telegram

Гайды, уроки и книги для Devops специалситов по всем вопросам @workakkk

نمایش بیشتر
9 449
مشترکین
+124 ساعت
-87 روز
-4230 روز
آرشیو پست ها
Repost from DevOps Docker
🐳 Docker без боли: Огромный гайд от новичка до профи 🚀 Пришло время расставить всё по полочкам. В этом большом гайде ты узнаешь: • как устроен Docker изнутри • как упаковать любое приложение в контейнер • как запускать десятки сервисов одной командой • как дебажить, оптимизировать и защищать контейнеры • как не сойти с ума с volumes, networks и образами 🎯 Без скучной теории — только практические команды, схемы и лайфхаки от тех, кто использует Docker в продакшене. Сохраняй и делись с коллегами, чтобы не потерять 👉 Читать онлайн @DevopsDocker

🔁 CI/CD и Kubernetes: как внедрить лучшие практики контейнеров ☸️ Пример манифеста для Kubernetes

apiVersion: apps/v1
kind: Deployment
metadata:
  name: app-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: your-app
  template:
    metadata:
      labels:
        app: your-app
    spec:
      containers:
      - name: app
        image: yourrepo/app:latest
        resources:
          limits:
            memory: "512Mi"
            cpu: "1000m"
          requests:
            memory: "256Mi"
            cpu: "500m"
        securityContext:
          readOnlyRootFilesystem: true
          allowPrivilegeEscalation: false
          runAsNonRoot: true
          capabilities:
            drop:
              - ALL
        livenessProbe:
          httpGet:
            path: /health
            port: 8080
          initialDelaySeconds: 10
          periodSeconds: 20
        readinessProbe:
          httpGet:
            path: /ready
            port: 8080
          initialDelaySeconds: 5
          periodSeconds: 10
🛡 Безопасность, ограничение ресурсов, probes — всё в боевом шаблоне. --- ### 🛠 Пример CI-пайплайна (GitLab CI)

stages:
  - build
  - test
  - push

variables:
  DOCKER_BUILDKIT: 1

build:
  stage: build
  image: docker:latest
  services:
    - docker:dind
  script:
    - docker build --target production -t yourrepo/app:$CI_COMMIT_SHA .
    - docker tag yourrepo/app:$CI_COMMIT_SHA yourrepo/app:latest

test:
  stage: test
  image: yourrepo/app:$CI_COMMIT_SHA
  script:
    - ./run_tests.sh

push:
  stage: push
  script:
    - echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" --password-stdin
    - docker push yourrepo/app:$CI_COMMIT_SHA
    - docker push yourrepo/app:latest
  only:
    - main
⚡ Использует: - BuildKit для кэширования и ускорения сборки - multi-stage Dockerfile - Тестирует контейнер перед пушем - Пушит только из main 📌 На заметку - Используй opa-gatekeeper или Kyverno для валидации безопасности в Kubernetes - В CI сканируй образы через Trivy, Grype или Snyk - Для прода лучше использовать immutable теги, например yourrepo/app:1.4.23 🧠 Контейнер — это артефакт, который живёт дальше: в k8s, CI/CD, observability. Поэтому его здоровье — это здоровье всего DevOps-процесса.

🐧 Как работает Linux: за кулисами ядра! Поговорим про базу! Linux — это не просто операционная система, это целый мир, в котором ядро управляет всем: от запуска программ до работы устройств. ▪ Ядро (Kernel) Главное «сердце» системы. Оно управляет: • процессором • памятью • устройствами • сетью • файловыми системами ▪ Процессы и потоки Каждое ваше приложение — это процесс. Ядро решает, когда и какой процесс получит доступ к CPU, создавая ощущение параллельной работы. ▪ Системные вызовы Программы не обращаются напрямую к железу — они используют системные вызовы (syscalls), чтобы попросить ядро выполнить задачи: открыть файл, отправить данные по сети и т.д. ▪ Безопасность и права доступа Каждый файл и процесс имеют владельца и права. Это ключ к безопасности: ни один пользователь не может трогать чужие файлы без разрешения. ▪ Модули ядра Linux умеет «подгружать» драйверы на лету. Например, подключили новую флешку — ядро сразу добавляет модуль для работы с ней. 💡 Факт: Именно ядро Linux стоит за Android, серверами Google, суперкомпьютерами и миллиардами устройств по всему миру. Linux — это не просто ОС. Это симфония процессов и устройств под управлением ядра, которая делает возможным всё — от работы веб-сайтов до запуска ракет 🚀 #Linux #Kernel #DevOps #ОС #Технологии

🖥 Эта статья объясняет, как использовать инструмент K3D для запуска легковесных Kubernetes-кластеров K3S в контейнерах Docke
🖥 Эта статья объясняет, как использовать инструмент K3D для запуска легковесных Kubernetes-кластеров K3S в контейнерах Docker! 🌟 В статье описываются шаги по установке и настройке K3D, создание кластеров, управление их состоянием и развертывание приложений. K3D идеален для локальной разработки, тестирования и CI/CD, благодаря своей простоте и низкому потреблению ресурсов. 🔗 Ссылка: *клик* @devopsitsec

Конфигурация VS Code + горячие клавиши

Repost from DevOps
👾 eBPF вместо прокси: новый подход к масштабированию в Kubernetes. Инженеры WSO2 предложили нестандартное решение для scale-
👾 eBPF вместо прокси: новый подход к масштабированию в Kubernetes. Инженеры WSO2 предложили нестандартное решение для scale-to-zero в Kubernetes — отказ от прокси в пользу eBPF. Они создали прототип, где eBPF-программа на уровне XDP перехватывает пакеты, инициируя масштабирование сервисов без промежуточного слоя. 🧑‍💻 Как это работает? — eBPF-драйвер отслеживает запросы к остановленным сервисам, временно блокируя их и запуская масштабирование — После готовности POD запрос проходит напрямую, минуя прокси — Подход работает для любых TCP-сервисов, включая базы данных Преимущества: — Работает для любых TCP-сервисов (не только HTTP) — Снижение latency на 30-50% по сравнению с прокси-решениями — Полная совместимость с существующими сетевыми политиками — Поддержка даже stateful-сервисов вроде PostgreSQL 🔗 Ссылка - *клик* @devopsitsec

Repost from DevOps
Zev 🔍 Это помощник для работы с терминалом на естественном языке. Он помогает быстро находить нужные команды и сохранять их в избранное, а его простой и понятный интерфейс делает освоение терминала доступным даже для новичков. pip install zev 📌 Github @DevopsDocker

🔥 Самые нужные каналы для DevOps разработчика, чтобы расти в доходе 💸DevOps | Вопросы собесовDevOps | Вакансии с удаленкойDevOps | Тесты Подпишись, чтобы не потерять ☝️

Трюки для ускорения Docker-образов на проде Контейнеры — сердце современных приложений. Но тяжёлые образы = медленные деплои и высокие затраты. Как ускорить образы без боли? ⸻ Мультистейдж билды — must have Используй multi-stage builds, чтобы собрать приложение в одном контейнере, а продакшн-образ сделать минимальным: # Сборка FROM golang:1.22 as builder WORKDIR /app COPY . . RUN go build -o app # Продакшн FROM alpine:latest WORKDIR /app COPY --from=builder /app/app . CMD ["./app"] Минимизируй базовые образы Выбирай облегчённые базовые образы: • alpine вместо ubuntu • distroless для максимальной безопасности и минимального веса Оптимизируй порядок слоёв Чем выше изменяемость — тем ниже слой: • Сначала COPY go.mod, npm package.json, установка зависимостей • Потом COPY . . с кодом проекта Это позволяет кэшировать большую часть слоёв даже при частых изменениях кода. Чисть за собой Всегда удаляй временные файлы и зависимости для сборки: RUN apt-get install -y build-essential && \ make build && \ apt-get remove --purge -y build-essential && \ apt-get autoremove -y && \ apt-get clean Сжимай образы Используй docker-slim — он автоматически оптимизирует образ, удаляя всё ненужное: docker-slim build --http-probe my-app:latest Как применять и чего избегать • В продакшне старайся держать образы <100MB • Не добавляй лишние пакеты “на всякий случай” • Проверяй образы на уязвимости: trivy image your-app:tag #devops #девопс

⚡️Легкий способ получать свежие обновления и следить за трендами в разработке на вашем языке. Находите свой стек и подписывайтесь: Python: t.me/pythonl Linux: t.me/linuxacademiya Собеседования DS: t.me/machinelearning_interview Нерйросети t.me/ai_machinelearning_big_data C++ t.me/cpluspluc Docker: t.me/DevopsDocker Хакинг: t.me/linuxkalii Devops: t.me/DevOPSitsec Data Science: t.me/data_analysis_ml Javascript: t.me/javascriptv C#: t.me/csharp_ci Java: t.me/javatg Базы данных: t.me/sqlhub Python собеседования: t.me/python_job_interview Мобильная разработка: t.me/mobdevelop Golang: t.me/Golang_google React: t.me/react_tg Rust: t.me/rust_code ИИ: t.me/vistehno PHP: t.me/phpshka Android: t.me/android_its Frontend: t.me/front Big Data: t.me/bigdatai МАТЕМАТИКА: t.me/data_math Kubernets: t.me/kubernetc Разработка игр: https://t.me/gamedev Haskell: t.me/haskell_tg Физика: t.me/fizmat 💼 Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy Папка FRONTEND: https://t.me/addlist/mzMMG3RPZhY2M2Iy 😆ИТ-Мемы: t.me/memes_prog 🇬🇧Английский: t.me/english_forprogrammers 🧠ИИ: t.me/vistehno 🎓954ГБ ОПЕНСОРС КУРСОВ: @courses 📕Ит-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy

👩‍💻 Эта полезная для новичков статья описывает основы работы с сетями в Docker. Она объясняет типы сетей, такие как bridge,
👩‍💻 Эта полезная для новичков статья описывает основы работы с сетями в Docker. Она объясняет типы сетей, такие как bridge, host, none, и overlay, которые Docker использует для подключения контейнеров 🌟 В статье также приведены примеры настройки и использования этих сетевых типов для эффективного взаимодействия между контейнерами. Рассматриваются сценарии применения каждого типа сети, а также полезные команды для управления сетями Docker 🔗 Ссылка: *клик* @devopsitsec

👩‍💻 Kubernetes The Hard Way • На разработку этого гайда было потрачено два года : множество тестов тысячи перезапусков, сот
+4
👩‍💻 Kubernetes The Hard Way • На разработку этого гайда было потрачено два года : множество тестов тысячи перезапусков, сотни пересобранных кластеров — все это в одном гайде. Чистый Kubernetes вручную — никакого kubeadm и прочих упрощений. - Удобные алиасы, функции и обёртки для командной строки - Десятки скриптов, проверенных в реальных боевых условиях - Важные нюансы, о которых не рассказывают в стандартных туториалах ➡Введение;Архитектура развертыванияПочему «The Hard Way»;Создание инфраструктуры;Базовая настройка узлов;Загрузка модулей ядра;Настройка параметров sysctl;Установка компонентов;Настройка компонентов;Проверка готовности компонентов;Работа с сертификатами;Создание корневых сертификатов;Создание сертификатов приложений;Создание ключа подписи ServiceAccount;Создание всех сертификатов;Создание конфигураций kubeconfig;Создание всех kubeconfig;Проверка блока сертификатов;Создание static pod-ов управляющего контура;Создание всех static pod-ов управляющего контура;Создание static pod-ов ETCD кластера;Запуск службы Kubelet;Проверка состояния кластера;Настройка ролевой модели;Загрузка конфигурации в кластер;Загрузка корневых сертификатов в кластер;Маркировка и ограничение узлов. #Kubernetes #devops #clusters

👣 Проект heynote — это минималистичное CLI-приложение для создания и хранения заметок прямо из терминала. Он позволяет быстр
👣 Проект heynote — это минималистичное CLI-приложение для создания и хранения заметок прямо из терминала. Он позволяет быстро фиксировать мысли или команды без необходимости переключаться на редактор или веб-интерфейс. 📌 Особенности: - Хранит заметки в простом .txt-файле. - Поддерживает добавление тегов (`#`) и отметок времени. - Удобная фильтрация заметок по ключевым словам или датам. - Возможность настройки пути к файлу хранения. Пример использования:

heynote "Перезапустить nginx #devops"
Эта команда добавит строку со временем и текстом в файл заметок. Удобно, когда нужно быстро сохранить мысль во время работы в консоли. Проект написан на Go, кроссплатформенный, и отлично вписывается в минималистичный рабочий процесс, особенно для тех, кто живёт в терминале. Полезный инструмент для системных администраторов, разработчиков и всех, кто ценит лаконичность. ▪Github #golang #devops #девопс @devops_teleg

Шпаргалка по sed в Linux Если вам нужны легкие напоминания о командах и полезные советы по синтаксису, скачайте нашу шпаргалку по sed.

👩‍💻 Docker - лучший обучающий канал по Devops. С помощью картинок и коротких видео даже новички начнут применять продвинуты
+4
👩‍💻 Docker - лучший обучающий канал по Devops. С помощью картинок и коротких видео даже новички начнут применять продвинутые инструменты разработки и использовать Docker. Стоит подписаться: t.me/DevopsDocker

Repost from DevOps
🚀 Docker представил Model Runner — локальный запуск ИИ-моделей в один клик​ Docker анонсировал Model Runner — новый инструме
🚀 Docker представил Model Runner — локальный запуск ИИ-моделей в один клик​ Docker анонсировал Model Runner — новый инструмент, позволяющий запускать и тестировать модели искусственного интеллекта (ИИ) локально, прямо из вашей текущей рабочей среды. Теперь разработчики могут легко интегрировать ИИ в свои приложения без необходимости сложной настройки или использования облачных сервисов.​ 🔧 Основные возможности: Локальный запуск моделей: Возможность запускать модели ИИ прямо на вашем компьютере без необходимости подключения к облаку.​ 🟡Интеграция с Docker: Использование знакомых инструментов Docker для управления ИИ-моделями.​ 🟡Поддержка популярных моделей: Возможность загрузки и использования моделей от ведущих поставщиков, таких как Hugging Face.​ 🟡OpenAI-совместимый API: Интерфейс, совместимый с API OpenAI, облегчает интеграцию моделей в существующие приложения.​ ✔️ Как начать: Установите Docker Desktop версии Включите функцию Model Runner в настройках Docker Desktop.​ Используйте команду docker model pull для загрузки нужной модели.​ Запустите модель с помощью команды docker model run. https://www.docker.com/blog/introducing-docker-model-runner/ @devopsitsec

Красивая шпаргалку по Docker на русском языке. Тут есть всё: базовые команды, сборка образов, отладка, сети и т.д. Проще говоря, всё, что нужно знать уважающему себя портовому работяге. https://gist.github.com/wtw24/66265a5707d5febd7ed51f570db94157#file-docker_rus-md

🎯 "Introducing a Lightweight Apache JMeter Docker Image: Efficient Load Testing Made Simple" статья о новом, оптимизированно
🎯 "Introducing a Lightweight Apache JMeter Docker Image: Efficient Load Testing Made Simple" статья о новом, оптимизированном Docker-образе для Apache JMeter, предназначенном для упрощения и ускорения процессов нагрузочного тестирования. Главные моменты статьи: ▪ Лёгкость и безопасность Образ построен на базе Alpine Linux, что обеспечивает минимальный размер и высокий уровень безопасности. ▪ Оптимизация для современных условий Использование Liberica JDK, многократные этапы сборки и очистки позволяют существенно уменьшить размер образа (151.78 МБ сжатого), что ускоряет загрузку и развёртывание. ▪ Полноценный функционал JMeter В образ включён Apache JMeter с поддержкой установки плагинов, что позволяет выполнять комплексное нагрузочное тестирование. ▪ Поддержка нескольких архитектур Образ совместим с платформами amd64 и arm64, что делает его универсальным для работы на различных устройствах – от серверов до устройств с архитектурой ARM (например, Apple M1/M2, AWS Graviton или Raspberry Pi). ▪ Простота использования Статья подробно описывает, как собрать и запустить образ, а также предоставляет сценарии для настройки и запуска тестов. Таким образом, эта статья представляет собой практическое руководство для разработчиков, DevOps-инженеров и QA-специалистов, которые хотят использовать лёгкий, быстрый и безопасный инструмент для нагрузочного тестирования с использованием Docker и Apache JMeter. 📌 Читать

🪐 The cosmic distance ladder with Terence Tao, part 2 На канале 3Blue1Brown вышло новое видео. Видео посвящено объяснению концепции Шкала расстояний в астрономии, которая используется в астрономии для определения расстояний до планет, звёзд и далеких галактик. Основные моменты видео: Фундаментальные принципы: Рассматриваются основные принципы, лежащие в основе определения расстояния в космосе, включая использование параллакса, переменных звезд и других космологических стандартов. Примеры и иллюстрации: Лекция сопровождается практическими примерами и визуальными иллюстрациями, чтобы наглядно показать, как именно измеряются расстояния в астрономии. Вклад Terence Tao: Как второй выпуск цикла, видео, вероятно, развивает и углубляет темы, начатые в первой части, уделяя внимание математическим и физическим аспектам измерений, что делает их понятными даже для аудитории без специализированного образования. Таким образом, видео является образовательной лекцией, которая помогает понять, как современные методы астрономии позволяют определять огромные расстояния во Вселенной. ▪ Видео 1 часть

A Practical Guide to Continuous Delivery Книга
A Practical Guide to Continuous Delivery Книга