devopsitsec | Unsorted

Telegram-канал devopsitsec - DevOps

23484

По всем вопросам- @workakkk @itchannels_telegram - 🔥полезные ит-каналы https://t.me/Golang_google - Golang программирование @golangl - golang chat @GolangJobsit - golang channel jobs @golang_jobsgo - jobs РКН: clck.ru/3FmvZA #VRHSZ

Subscribe to a channel

DevOps

QR-код с дыркой: почему порванный QR всё равно сканируется?

Порванный QR-код часто сканируется, потому что к данным в нём добавлены проверочные символы кода Рида–Соломона. Сканер находит метки по углам, читает байты и по проверочным символам восстанавливает потерянные. У восстановления есть предел: уровни L, M, Q и H выдерживают потерю примерно 7, 15, 25 и 30% кодовых слов, причём считается именно доля кодовых слов, а не площадь дыры.

https://www.youtube.com/shorts/15_4DjyrS_Q

Читать полностью…

DevOps

Это C. Просто автор предпочитал синтаксис ALGOL 68 😄

Стив Борн, создатель Bourne shell, использовал макросы, чтобы исходники оболочки выглядели привычнее:


#define IF if(
#define THEN ){
#define ELSE } else {
#define FI ;}


Теперь условие можно записать так:


IF n <= 1 THEN
return;
FI


Препроцессор превратит его в обычный C:


if (n <= 1) {
return;
}


Такие макросы действительно есть в исходниках Bourne shell из UNIX V7. На картинке тот же приём применяется к циклам: FOR, DO, OD.

Любопытный кусочек истории: через #define можно поменять внешний вид языка, сохранив прежний компилятор. А вот читать и отлаживать такой код придётся уже с учётом собственного «диалекта».

https://www.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/sh/mac.h

Читать полностью…

DevOps

Для тех, кто работает с Kubernetes и облачной инфраструктурой, в октябре намечается отличный повод выбраться из рабочих чатов и встретиться офлайн 👀

Обсудим:
– как пройти путь от бизнес-требования к ядру Linux
– как дать агенту управление кластером вашей инфраструктуры 
– как в MWS Cloud Platform доставляют системный софт в managed K8s
– мультитенантность в Kubernetes-платформе — «Проект вместо namespace»
– как работает LLM-диагностика инцидентов в Kubernetes и OpenStack

Не обойдётся и без дискуссий: на круглых столах разберём, действительно ли Kubernetes победил и что делать, если из-за ИИ нас всех уволят.

В течение дня вас ждут доклады, общение с коллегами и активности от партнеров. Будет возможность обсудить кейсы, обменяться опытом и познакомиться с коллегами из индустрии. После конференции вас ждет афтепати, где можно будет пообщаться с единомышленниками в более неформальной обстановке.

📍 Москва, 5-й Донской проезд, 17, Connect
📅 22 октября, 10:00–21:00

👉 Программу, билеты и подробности сможете найти на сайте Kuber Conf от АОТ!

Читать полностью…

DevOps

🛠️ Awesome SRE - большая подборка ресурсов для Site Reliability Engineering

Репозиторий awesome-sre собирает полезные материалы по SRE и Production Engineering в одном месте.

Внутри есть подборки по:

- Monitoring и Observability
- Incident Response и Post-Mortem
- On-Call
- Chaos Engineering
- Automation и Toil Reduction
- Capacity Planning
- SLO / SLI
- Performance
- книгам, докладам, статьям и гайдам

Также собраны инструменты вроде Prometheus, Ansible, Puppet, SaltStack, Chaos Monkey, Gatling и другие решения для эксплуатации production-систем. :

Хорошая база, если изучаете SRE, DevOps, reliability engineering или готовитесь к собеседованию.

GitHub:
https://github.com/dastergon/awesome-sre

Читать полностью…

DevOps

🚀 Как на самом деле работает Kubernetes Gateway API: от DNS до Pod

Полный путь запроса выглядит так:

DNS → Cloud Load Balancer → Gateway Service → Gateway Proxy → Backend Service → Pod

Что происходит по шагам:

- DNS указывает на IP облачного Load Balancer.
- Load Balancer отправляет трафик в Kubernetes Service, связанный с Gateway.
- Service ведет на proxy-поды: например, Envoy или NGINX.
- Gateway Controller следит за HTTPRoute, GRPCRoute и другими ресурсами.
- Когда вы создаете маршрут, контроллер автоматически обновляет конфигурацию proxy.
- HTTPRoute решает, куда пойдет конкретный запрос.

Например:

/payment → payment-service
/auth → auth-service

Главное отличие от классического Ingress - разделение ролей.

В Gateway API контроллер управляет конфигурацией, а сам трафик обрабатывают отдельные Gateway/proxy-инстансы.

Если вы уже понимаете Ingress, Gateway API станет гораздо понятнее: концепция похожа, но архитектура заметно чище и гибче.

Читать полностью…

DevOps

🔐 Kubernetes User Namespaces - важная защита контейнеров от root-эскейпа

Идея простая: root внутри контейнера больше не обязан быть root на хосте.

Например:

Container UID 0 → Host UID 100000

То есть процесс внутри контейнера считает себя root, но на уровне хоста работает как непривилегированный пользователь.

В Kubernetes это включается через:

hostUsers: false

Что это даёт:

- изоляцию UID/GID контейнера от хоста
- снижение последствий container escape
- возможность ограничивать диапазоны UID через /etc/subuid
- дополнительный слой защиты без переписывания самого приложения

Важно: User Namespaces не заменяют seccomp, capabilities, AppArmor/SELinux и другие механизмы, а дополняют их.

Полезная вещь для тех, кто запускает контейнеры с UID 0 и хочет уменьшить blast radius при компрометации.

Читать полностью…

DevOps

Фильтр Блума: миллион элементов в 1,2 МБ - как это работает?

Почему алгоритм «помнит» то, чего не было? Наглядно разбираем Bloom Filter, ложные срабатывания и экономию запросов к базе.

#Алгоритмы #Программирование #BloomFilter #ФильтрБлума #Математика

Читать полностью…

DevOps

Как строить инфраструктуру, когда часть сервисов — on-prem, а часть — в cloud

Гибридная инфраструктура имеет много преимуществ - это и распределение нагрузки между контурами под различные задачи. и оптимизация затрат, когда мощности нужны в моменте, а закупать и поддерживать свои серверы не выгодно.

Yandex Cloud активно развивает это направление, и предоставляет полный набор инструментов для создания и поддержки полноценного гибрида.

Во-первых, сети. Тут есть Cloud Interconnect для связности ресурсов в разных контурах. А VPC Private Endpoint позволяет безопасно объединять ресурсы в облаке без выхода в интернет - в том числе с облачным хранилищем, или платформой AI Studio. 

Во-вторых, дополнительные мощности, которые можно быстро получить в моменте. Тут представлен сервис по аренде серверов, который получил свое логичное развитие в виде BareMetal Extend - это уже преднастроенная инфраструктура с развернутой виртуализацией и Kubernetes. То есть можно получить готовую среду.изолированную от облака, и сразу приступить к разработке. 

Ну и в-третьих, обновление сервиса, который позволяет разработки Yandex Cloud перенести в закрытый контур. Речь про Stackland, в который интегрировано еще больше PaaS-сервисов. Теперь платформа позволяет в  закрытом контуре создать полноценную платформу данных.

Читать полностью…

DevOps

⚡️ В Kubernetes соединения случайно обрываются под нагрузкой? Проверьте conntrack.

Если таблица отслеживания соединений на ноде заполнена, это может проявляться таймаутами, сбоями DNS и ошибками запросов. Сначала сравните число записей с лимитом:


sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_max


В кластере, который создаётся через kubeadm, лимит можно задать в отдельном документе KubeProxyConfiguration внутри конфигурационного YAML:


apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
conntrack:
maxPerCore: 65536
min: 131072


maxPerCore задаёт лимит на ядро, min — нижнюю границу для ноды. Примерные значения нужно подбирать под число ядер и нагрузку: увеличение лимита помогает только после проверки, что проблема действительно в переполнении таблицы. Конфигурация kube-proxy, переданная в kubeadm init, применяется ко всем его экземплярам в кластере.

Документация Kubernetes - https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/

Читать полностью…

DevOps

Gateway API vs Ingress Controller в Kubernetes

Главное различие в архитектуре управления трафиком.

Ingress задаёт правила маршрутизации, а Ingress Controller обычно одновременно:

- следит за конфигурацией;
- обновляет правила;
- сам проксирует трафик.

С Gateway API логика похожа: вы описываете Gateway, HTTPRoute, GRPCRoute, а контроллер превращает их в рабочую конфигурацию.

Например, в NGINX Gateway Fabric control plane и data plane разделены:

- Control plane: контроллер читает Gateway API-ресурсы и формирует конфигурацию.
- Data plane: отдельный NGINX pod принимает и маршрутизирует трафик.
- Между ними конфигурация передаётся через gRPC.

В итоге Gateway API даёт более гибкую и расширяемую модель маршрутизации, особенно для сложной инфраструктуры и нескольких команд.

Коротко: Ingress проще и привычнее. Gateway API предлагает более современную архитектуру с чётким разделением управления и обработки трафика.

Читать полностью…

DevOps

Прокачай терминал Linux: 7 утилит, которые экономят время

Описание: Что установить на Linux для удобной разработки? Быстрый поиск по коду, переходы между проектами, наглядный Git и сохранение рабочих сессий - 7 полезных инструментов с примерами.

#Linux #Терминал #Программирование #DevOps #НастройкаLinux

Читать полностью…

DevOps

Есть серьезный разговор…
об ИТ-инфраструктуре и требованиях к ней в современных условиях

Как активное внедрение ИИ изменило подход к выбору железа, с чего начать при выборе приватного облака и как создать отказоустойчивое решение под свои задачи. Обо всем этом и не только — на бесплатной конференции Selectel ТехноДень 8 октября.

Топ-менеджеры, ИТ-директора и инженеры топовых технологических компаний соберутся на одной площадке и обсудят ИТ-тренды, инфраструктуру, ИИ, данные и информационную безопасность. Вас ждут 20 экспертных докладов, 20 интерактивных стендов, живое общение и живая запись подкаста Вселенная Плюс на главной сцене конференции.

Присоединяйтесь к Selectel ТехноДень, чтобы лично задать вопросы экспертам рынка и обменяться опытом. Количество мест ограничено, регистрируйтесь уже сейчас →

Реклама. АО "Селектел". erid:2W5zFGsAMi1

Читать полностью…

DevOps

⚡️ Поды здоровы, а запросы в Kubernetes случайно отваливаются? Проверьте conntrack.

Linux хранит состояния отслеживаемых соединений в таблице conntrack. Она используется в том числе при NAT для Kubernetes Services. Если таблица переполняется, новые соединения могут терять пакеты.

Симптомы: периодические тайм-ауты, сбои DNS и ошибки API при нормальных показателях приложений.

Как проверить на проблемном узле:


# Текущее число записей и лимит
sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_max

# Сообщения ядра
sudo journalctl -k | grep -i conntrack


Характерная запись:


nf_conntrack: table full, dropping packet


Что делать:

• Увеличить лимит с учётом доступной памяти. Универсального значения для всех узлов нет.

• Проверить настройки conntrack.maxPerCore и conntrack.min в kube-proxy: он может управлять лимитом. Одного изменения через sysctl недостаточно для устойчивой настройки.

• Сократить создание новых соединений: использовать пулы, HTTP keep-alive, проверить лавину повторных запросов.

• Пересматривать тайм-ауты по состояниям соединений после диагностики. Слишком короткие значения могут нарушить работу долгоживущих подключений.

Следите за заполнением таблицы на каждом узле. Свободные ресурсы соседних нод не спасают таблицу перегруженной.

https://kubernetes.io/docs/reference/config-api/kube-proxy-config.v1alpha1/

Читать полностью…

DevOps

Что реально стоит за требованиями в вакансиях DevOps-инженера

Открываешь вакансию - а там список из десяти технологий и фраза «опыт от 3 лет». Непонятно, что из этого критично, а что просто скопировали из соседней вакансии.

🔹В этом ролике - нарезка с вебинара, где Senior ИТ-рекрутер Аниса Рогатова и практикующий DevOps-инженер Евгений Федосеев разбирают реальные вакансии по косточкам: что на самом деле стоит за каждым требованием и на что смотрят при отборе.

🔹Полезно, если сейчас откликаешься на вакансии и не уверен, дотягиваешь ли до требований - или просто хочешь понимать, как рекрутер и инженер читают резюме по-разному.

Смотреть полную запись вебинара 👉СМОТРЕТЬ

Читать полностью…

DevOps

Гибридная инфраструктура — новая реальность или красивое словосочетание из презентаций?

1 октября будем разбираться с теми, кто такую инфраструктуру действительно строит и эксплуатирует, на закрытом мероприятии Deckhouse для руководителей ИТ.

Поговорим о подходах к построению гибрида, разберём реальные кейсы и покажем обновлённую платформу Deckhouse вживую.


Выступят:
— Александр Титов, генеральный директор «Фланта»
— Карапет Манасян, директор продуктовых направлений Deckhouse
— Дмитрий Сагайдачный, руководитель центра цифровых платформ «Газпромнефть ИТО»
— Виктор Сиренко, начальник управления развития сервисов ИТ-инфраструктуры «ОТП Банка»

Если перед вами стоит задача работать с разными средами и нагрузками, регистрируйтесь приходите обсудить практические решения с коллегами и командой Deckhouse.

Зарегистрироваться


Реклама. АО "ФЛАНТ". ИНН 7723661439.

Читать полностью…

DevOps

🔐 Kyverno может автоматически закрывать весь сетевой трафик в новых namespace

По умолчанию Pod'ы в Kubernetes могут свободно отправлять и принимать трафик, пока это не ограничено через NetworkPolicy.

С помощью Kyverno Generate Rules это можно автоматизировать.

Например, после команды:


kubectl create namespace payments


Kyverno автоматически создаст внутри payments политику deny-all-traffic, которая:
- выбирает все Pod'ы;
- блокирует входящий трафик;
- блокирует исходящий трафик;
- оставляет namespace в режиме deny by default.

После этого команда уже явно добавляет только нужные разрешения: DNS, доступ к БД, внутренним API и другим сервисам.
Полезный паттерн для cluster security:
новый namespace → deny all → разрешаем только необходимое.

Так базовая сетевая изоляция применяется автоматически, а не зависит от того, вспомнил ли разработчик добавить NetworkPolicy.

Читать полностью…

DevOps

👣 Большой разбор собеседований на Go в 2026 году

На GitHub появился мощный репозиторий для подготовки к Golang-интервью: более 190 вопросов, каверзные задачи и live coding с решениями.

Внутри:

- 25 задач «что выведет код?»;
- 22 live coding задачи с разборами;
- goroutines, channels, sync, atomic и memory model;
- runtime, scheduler, escape analysis и GC;
- generics и context.Context;
- HTTP, gRPC, базы данных и брокеры;
- System Design для Middle+/Senior;
- свежие изменения Go 1.22–1.27.

Есть классические задачи вроде Worker Pool, LRU Cache, Rate Limiter, Fan-in, Pipeline, TTL Cache, Singleflight и Graceful Shutdown.

По сути, готовая шпаргалка + задачник + roadmap для подготовки к Go-собеседованию.

https://github.com/justxor/sobesrazborgoogle

Читать полностью…

DevOps

🚀 DevOps Interview 2026 - шпаргалка-курс для подготовки к собеседованию

Всё, что спрашивают на собеседованиях DevOps / SRE / Platform Engineer в 2026 году — в одном репозитории. Короткая теория, команды, типовые вопросы с ответами, задачи live-coding и «ловушки» интервьюеров.

https://github.com/justxor/devops-interview-2026

Читать полностью…

DevOps

5 вещей, которые сильно упростят Kubernetes в начале:

1. Сначала разберитесь с Service, и только потом лезьте в Ingress.
2. Поймите requests и limits - без этого сложно нормально управлять ресурсами.
3. Разберитесь, как работает DNS внутри кластера.
4. Узнайте, что реально происходит, когда Pod умирает и кто его перезапускает.
5. Освойте kubectl для дебага до того, как ставить десятки дополнительных инструментов.

Kubernetes становится намного проще, когда понимаешь не команды, а что происходит под капотом.

Читать полностью…

DevOps

Что произойдет, если откажет основное хранилище секретов, LLM начнет бесконтрольно расходовать токены, а новые проверки безопасности замедлят выпуск сервисов?

15 октября на DevOps-треке конференции Orion soft: Большая игра разберут:



— архитектуру DR-репликации, ее отличие от Performance-репликации и результаты нагрузочных тестов

— защищенный и отказоустойчивый доступ к LLM, биллинг токенов и ограничения готовых open-source-шлюзов

— self-service-путь AppSec с шаблонами как код и понятными policy gates

— комплексные Admission-проверки на CEL, сравнение с Rego и накладные расходы под высокой нагрузкой.


В программе — архитектурные схемы, сравнение подходов, примеры проверок и результаты тестов.

📍 Москва
Регистрация

Читать полностью…

DevOps

Объектное хранилище в эпоху быстрых данных

Объём данных, с которыми нужно работать, растёт ежедневно. Стандартных решений уже не хватает для задач ИИ и аналитики. Большие объёмы данных нужно не только хранить, но и быстро записывать и читать.

В MWS Cloud Platform мы построили объектное хранилище не только на привычных HDD-дисках, но и на NVMe. На вебинаре покажем, какие сценарии работы это открывает и как меняет привычные подходы.

Подключайтесь! Обсудим:
✅ Чем классы хранения MWS Object Storage отличаются от привычных
✅ В каких сценариях новый тёплый класс проявляет себя лучше всего
✅ Преимущества и слабые места в разных сценариях работы

📆 7 октября в 14:00 (мск)

Зарегистрироваться

Читать полностью…

DevOps

📌Fable 5.1 рассчитала амплитуду рассеяния в девяти петлях

Модель в среде Claude Science рассчитала шестичастичную амплитуду рассеяния в планарной четырёхкратно суперсимметричной теории Янга–Миллса на уровне девяти петель.

Амплитуды рассеяния показывают, насколько вероятна та или иная реакция при столкновении частиц, и по ним теорию сверяют с данными Большого адронного коллайдера.

Целиком их не посчитать, поэтому физики обрывают расчёт на определённом числе петель, т.к каждая следующая приближает к реальному ответу, но так его утяжеляет, что большинство амплитуд доведены лишь до двух петель, а некоторые до трёх.

Суперсимметричный вариант теории Янга–Миллса реальный мир не описывает, это полигон, где специалисты по амплитудам оттачивают методы, потому что считать в нём парадоксально проще.


Задачу запустили штатные физики Anthropic Лиам Фицпатрик и Сиддхарт Мишра-Шарма в ответ на вызов бывшего физика и научного журналиста Мэтта фон Хиппеля - он предлагал ИИ-компаниям решить одну из крупных открытых задач его прежней области с вычислительными ресурсами академического уровня.

Результат проверил Лэнс Диксон из Стэнфорда и SLAC, соавтор предыдущего рекорда в восемь петель.

Восьмипетлевой результат Диксон и Энди Лю получили в 2023 году окольным путём, через родственную величину, форм-фактор.

Claude пришёл к девяти петлям двумя способами - исходным гексагональным бутстрапом и через форм-фактор. Исследователи дали модели постановку задачи и дальше вмешивались редко, в духе:

«... я иду спать, продолжай, пока не скажу остановиться, и присылай отчёт каждые 4–6 часов».


Код бутстрапа Claude сам написал на Python с SymPy и неделю считал на 96 процессорах.

Диксон проверил результат, пересчитав из амплитуды девятипетлевой форм-фактор, к которому его команда шла пару лет, и назвал работу настоящим триумфом для языковой модели, выполнившей все шаги сложного алгоритма.

Параллельно к тому же результату шла группа Сун Хэ из Китайской академии наук с GPT-6 и когда китайцы связалась с фон Хиппелем через несколько дней после Anthropic, большая часть расчёта у них уже была готова.

Фон Хиппель допускает, что задача просто удобна для ИИ, но считает, что технология действительно стала лучше:

«В марте 2026 года ИИ выполнял физические проекты как студент - это были небольшие задачи, много опеки и ошибок. Здесь же настоящий расчёт на переднем крае науки, из тех, за которые обычно берутся ведущие специалисты по амплитудам», – пишет он.


Результат выложен на сайте Мишры-Шармы. Рецензирования не было, а полную функцию, по признанию авторов, посчитали один раз, независимо перепроверили только её упрощённую часть, символ.


@ai_machinelearning_big_data

#news #ai #ml

Читать полностью…

DevOps

Снёс коммиты? Как вернуть код после git reset -hard

Одна команда - и три коммита исчезли из истории ветки. Субару уже готов начинать заново, но Эмилия знает способ вернуться.

Показываем, как восстановить коммиты после git reset --hard: найти нужный хеш через git reflog, проверить изменения и создать спасательную ветку.

Способ работает, пока объекты коммитов сохранились. Незакоммиченные правки reflog не восстанавливает.

#Git #Программирование #ReZero #GitReflog

Читать полностью…

DevOps

🤖 ИИ-агенты теперь могут самостоятельно работать с задачами в GitLab

Обычно разработчик общается с ИИ в отдельном чате, а потом переносит результат в рабочий процесс. В SourceCraft появился другой сценарий: агент получает задачу прямо в обсуждении GitLab и работает под собственной учетной записью.

Например, ему можно поручить написание кода или проверку безопасности. Готовый результат агент возвращает на ревью. А если по ходу работы не хватает данных или требуется согласование, он сам обращается к команде.

При этом взаимодействовать с агентами можно не только через GitLab, но и из VS Code, командной строки, мессенджеров или веб-интерфейса. Компании также смогут подключать собственных агентов, в том числе созданных в Yandex AI Studio.

Получается, что ИИ участвует не только в написании кода, но и в самом процессе разработки: от получения задачи и уточнения деталей до передачи результата на проверку.

Читать полностью…

DevOps

Приглашаем на воркшоп «Управление уязвимостями: строим технический процесс как у взрослых»

🔹Разберём на стенде: ОС, веб-сервер, база данных, приложение - разные слои, разные владельцы, - как это устроено в реальной компании.

Что разберём:
✅откуда берутся уязвимости и патчи, как читать security-advisory
✅как приоритизировать, когда уязвимостей сотни: CVSS, EPSS, CISA KEV
✅полный цикл вживую: скан → приоритизация → патч на staging → проверка тестами → раскатка на прод
✅что делать, когда патча ещё нет — на живом примере с реальным эксплойтом
✅как устроен процесс: SLA, метрики, реестр уязвимостей

🔹Проведёт Кирилл Казарин - руководитель международного департамента информационных технологий, инфраструктуры и поддержки производственных систем, RingCentral Inc.

🔹Формат: около 4 часов с перерывами, вопросы можно задавать по ходу. Руками на воркшопе не работаем, но в конце дадим ссылку на репозиторий со стендом, конфигами и шаблоном реестра уязвимостей, чтобы повторить всё в своём темпе.

🔹Когда: 26 сентября в 12:00 мск

⚡️ЗАНЯТЬ МЕСТО НА ВОРКШОПЕ⚡️

Читать полностью…

DevOps

Kubernetes NodeLocal DNSCache: ускоряем DNS-запросы 🚀

Без NodeLocal DNSCache DNS-запрос от Pod проходит через:

Service IP → kube-proxy → DNAT → conntrack → CoreDNS

В нагруженных кластерах это увеличивает задержки и создаёт дополнительную нагрузку на таблицу conntrack.

NodeLocal DNSCache запускает локальный DNS-кеш на каждой ноде как DaemonSet:

Pod → локальный DNS-кеш → CoreDNS

Если запись уже есть в кеше, Pod получает ответ прямо с текущей ноды. При промахе запрос передаётся в CoreDNS.

Преимущества

- быстрее обрабатываются повторные DNS-запросы;
- снижается нагрузка на CoreDNS;
- уменьшается межнодовый DNS-трафик;
- обходятся kube-proxy и DNAT;
- сокращается количество UDP-записей в conntrack;
- доступны DNS-метрики отдельно для каждой ноды.

NodeLocal DNSCache стабилен с Kubernetes 1.18, но обычно его нужно включать отдельно и развернуть node-local-dns как DaemonSet.

🔗 Официальная документация Kubernetes: https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/

Читать полностью…

DevOps

🐳 Docker-образ с 3,17 ГБ до 354 МБ - почти в 9 раз меньше

Такая оптимизация обычно достигается не одной магией, а несколькими простыми приёмами:

- multi-stage build
- python:slim / distroless вместо тяжёлого base image
- удаление build-зависимостей после сборки
- очистка apt / pip cache
- .dockerignore для лишних файлов
- установка только production-зависимостей
- объединение команд RUN, чтобы не тащить мусор в слои

Пример:

3.17 GB → 354 MB

Что это даёт:
- быстрее pull/push
- быстрее CI/CD
- меньше места в registry
- быстрее запуск новых pod
- меньше потенциальная attack surface

Перед оптимизацией полезно посмотреть, что реально раздувает образ:

docker history <image>

и отдельно проверить слои через dive.

Большой Docker image почти всегда стоит сначала разобрать по слоям — часто там лежат гигабайты build-tools, cache и файлов, которые в runtime вообще не нужны.

Читать полностью…

DevOps

✔️ OpenAI на 60% снизила цены на голосовое управление агентами Work и Codex

Теперь в десктопных клиентах ChatGPT за тот объем кредитов пользователи получают в 2,4 раза больше времени голосовой связи, а биллинг голосового потока и затраченных на задачу вычислительных ресурсов разделен.

Изменения касаются только десктопной среды и не затрагивают стандартный голосовой режим ChatGPT, где действуют другие лимиты и правила тарификации.


@ai_machinelearning_big_data

#news #ai #ml

Читать полностью…

DevOps

🌦 Linecast - погода, карты, радар, приливы, Солнце и Луна прямо в терминале

Open-source CLI превращает публичные данные в шесть интерактивных приложений:

- linecast weather — погода, почасовой прогноз, AQI и предупреждения
- linecast sunshine — восход, закат и длина дня
- linecast moon — фазы Луны, восход/заход и календарь
- linecast tides — график приливов и отливов
- linecast radar — анимированный радар и спутниковые данные
- linecast maps — карты, рельеф, поиск мест и маршруты

Работает на macOS, Linux и Windows. Написан на Python, почти без зависимостей, не требует аккаунта или API-ключей и подстраивает цвета под тему терминала.

Можно даже запустить без установки:

uvx linecast weather

GitHub:
https://github.com/ashuttl/linecast

Читать полностью…

DevOps

Полноценный Lisp можно уместить всего в 99 строк C.

Внутри при этом:

- 21 примитив
- REPL
- сборщик мусора Cheney GC
- числа с плавающей точкой
- указатели
- типы значений

И всё это без `struct`-тегов, без внешних библиотек и без обычных динамических аллокаций для представления объектов.

Главный трюк - NaN boxing.

IEEE 754 оставляет много битов внутри специальных NaN-значений. Их можно использовать как скрытое хранилище:

- часть битов кодирует тип
- до 48 бит можно использовать под указатель
- обычные double при этом остаются обычными числами

В итоге одно 64-битное значение может представлять и число, и указатель, и другие типы данных.

Очень красивый пример того, как устройство IEEE 754 можно использовать для построения компактного рантайма языка.

Читать полностью…
Subscribe to a channel