Или отмена истории, сразу к делу. Как этими контейнерами управлять через призму AI агента?!
Я думаю каждый из вас попросив сделать нейронку того же тг бота слышал или получал готовый Docker?
Или вы, знающий уже этот термин по какой-то причине, попросили вам все упаковать в контейнер. Чтобы быстро развернуть.
Еще может вы ставили софт для агента, который целиком работает на связке разворачиваемых докер контейнеров.
Если что-то про вас, то скорее всего вы засрали себе на 99% диск вашей VPS, быть может ПК. Потому что докеры постоянно создают кэш, как и разные сборщики приложений.
Про общую чистку ПК я писал вот здесь, а сегодня мы разберемся в устройстве докера с угла вайбкодера — без духоты и чтоб иишка нормально делала.
А данный пост можно напрямую дать агенту, самому руками кидать цитаты в напоминание.
База по Docker (и прочим дырам)
0. Не хочешь проблем с докером — не используй докер
Вы обязаны хотя бы примерно понимать общую архитектуру вашего вайбкод проекта и причины выбора того или иного решения.
Докер хорош в ряде ситуаций и обстоятельств, ясненько? Вот вне этого списка не используй контейнеры.
- Твое приложение это набор разных сервисов
- Тебе нужно разворачивать в разных линуксах и конфигурациях машин
- Ты хочешь песочницу для тестов
Если ты написал конкретно софт под себя, все работает и настроено: тебе докер больше не нужен. И вообще, так как за тебя делает AI агент, не проблема и раздельно все сервисы собрать с нуля, везде.
Остановить может лишь трата токенов и время. Хочешь экономить — собирай в докере.
Вот пример проекта где куча элементов разбита по докерам и поднимается на любом железе, следовательно.
Dify — open-source платформа для создания AI-агентов, чат-ботов, RAG-баз знаний и LLM-воркфлоу, объединяющая Nginx, Web UI, API-бэкенд, Celery, PostgreSQL, Redis, векторную БД, файловое хранилище, плагины и изолированную песочницу для выполнения кода.
1. Не распахивай плащ
FastAPI, Redis, PostgreSQL или твой дашборд могут торчать наружу. Причем так, что недоброжелательный китайский бот войдет туда и в лучшем случае выключит докер.
Я точно писал про это пост, но не смог его найти. Однажды китайский бот снес мне проект с сервера, стоило один раз в проде забыть закрыть порт.
Оставь публичным только reverse proxy. Redis и Postgres не публикуй наружу. Локальные порты привязывай к 127.0.0.1 и проверь итоговые bindings.
2. Права бывают разные
Прикол докер контейнеров в том, что их можно полностью изолировать от системы. Использовать как песочницу или изолированный модуль. А можно наоборот.
Запустить за 5 секунд и выдать доступы куда глаза глядят. Например для Hermes агента, будь то основной или вторичный профиль.
FastAPI запустил мальварь(?) или твой AI агент выполнил инструкцию по инжект промпту — бум. Из докера эта залупа лезет во всю систему.
Не используй docker.sock, privileged, host network и широкие host mounts без строгой необходимости. Запускай контейнер не от root, убери лишние capabilities и включи no-new-privileges.
3. Держи дом в чистоте
Докер обожает раздувать свои размеры. Не только на диске но в вопросе потребления процессора и оперативы. Те же фреймворки написания RAG систем поднятые в докере для удобства сжирают непозволительно много места 24на7.
Для этого нужно, разумеется, агенту — работать правильно. И вот инструкция по избежанию мусора и проблем. Оные агент допускает в 10 из 10 случаев.
Ограничь каждому контейнеру RAM, CPU и PIDs. Настрой ротацию логов, лимиты Redis и контроль свободного диска. Добавь безопасную очистку старого build cache и образов, но никогда автоматически не удаляй volumes.
А если вам интереса тема дыр и как прокачать AI.
То лайки, реакции, репосты, комментарии, агрегарии, рептилии, лилии, пролетарии. И другие слова.
p.s. бонусом можете почитать про этот эксплоит.
