Python/ django
63K subscribers
2.3K photos
145 videos
48 files
3.03K links
по всем вопросам @haarrp

@itchannels_telegram - 🔥 все ит каналы

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
Download Telegram
🖥 Как уменьшить Docker-образ в 10+ раз - понятный и практичный разбор.

Размер Docker-образа - это не косметика.
Он напрямую влияет на:
- скорость CI/CD
- время деплоя
- cold start контейнеров
- расходы на storage и трафик

В примере ниже образ удалось сократить с 588 MB до 47.7 MB - почти на 92%.
Вот какие приёмы реально дают эффект.

1) Выбор базового образа - самое важное решение

Полный python:3.9 тянет за собой:
- лишние системные утилиты
- документацию
- dev-пакеты

Переход на python:3.9-alpine:
- в разы меньше размер
- быстрее скачивание
- меньше attack surface

Это первый и самый крупный выигрыш.

2) Оптимизация слоёв Docker

Каждый RUN, COPY, ADD - это новый слой.
Много мелких инструкций = раздув образа.

Правило:
- объединяй связанные команды
- удаляй временные файлы в том же RUN

Меньше слоёв - меньше вес - быстрее сборка.

3) .dockerignore - бесплатная оптимизация, которую часто забывают


Без .dockerignore в build context улетает всё:
- .venv
- .cache
- .git
- временные файлы

Это:
- увеличивает размер контекста
- замедляет сборку
- иногда ломает кеширование

.dockerignore должен быть всегда. Без исключений.

4) Multi-stage build - must-have для продакшена

Одна из самых мощных техник.

Идея простая:
- stage 1 - сборка, компиляция, зависимости
- stage 2 - только то, что нужно для запуска

В финальном образе:
- нет build-инструментов
- нет лишних библиотек
- только runtime

Результат:
- меньше размер
- меньше уязвимостей
- быстрее старт

Итоговый эффект:
- 588 MB -> 47.7 MB
- −91.89% размера
- быстрее CI
- быстрее деплой
- дешевле инфраструктура

Главный вывод:
маленькие оптимизации накапливаются.

Каждый сэкономленный мегабайт:
- ускоряет каждый pull
- ускоряет каждый deploy
- масштабируется вместе с вашей системой

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2312🔥4😁4
📌 Подробная шпаргалка по командам Docker

Удобный и практичный референс для повседневной работы с Docker: образы, контейнеры, сети, тома и Docker Compose.

🐋 Общие команды Docker

- docker --version — версия Docker
- docker info — информация о системе Docker
- docker help — список доступных команд
- docker <command> --help — помощь по конкретной команде

📦 Работа с образами

- docker pull <image> — скачать образ из реестра
- docker images — список локальных образов
- docker build -t name:tag . — собрать образ из Dockerfile
- docker tag <image> <repo>:<tag> — назначить тег образу
- docker rmi <image> — удалить образ
- docker image prune — удалить неиспользуемые образы
- docker image prune -a — удалить все неиспользуемые, включая невисячие

🚀 Контейнеры: запуск и управление

- docker run <image> — запустить контейнер
- docker run -d <image> — запуск в фоне
- docker run -it <image> bash — интерактивный режим
- docker ps — активные контейнеры
- docker ps -a — все контейнеры
- docker stop <container> — остановить контейнер
- docker start <container> — запустить остановленный
- docker restart <container> — перезапуск
- docker rm <container> — удалить контейнер
- docker rm -f <container> — принудительно удалить
- docker logs <container> — логи контейнера
- docker exec -it <container> bash — войти внутрь контейнера
- docker inspect <container> — подробная информация (JSON)

🧹 Очистка и обслуживание

- docker container prune — удалить все остановленные контейнеры
- docker image prune — удалить неиспользуемые образы
- docker volume prune — удалить неиспользуемые тома
- docker network prune — удалить неиспользуемые сети
- docker system prune — очистить всё неиспользуемое
- docker system prune -a — максимально агрессивная очистка
- docker system df — использование диска Docker’ом

📊 Мониторинг и отладка

- docker stats — использование CPU и памяти контейнерами
- docker top <container> — процессы внутри контейнера
- docker diff <container> — изменения файловой системы контейнера

🌐 Сети Docker

- docker network ls — список сетей
- docker network inspect <network> — информация о сети
- docker network create <name> — создать сеть
- docker network rm <name> — удалить сеть

💾 Docker Volumes


- docker volume ls — список томов
- docker volume inspect <volume> — информация о томе
- docker volume create <name> — создать том
- docker volume rm <name> — удалить том

⚙️ Docker Compose

- docker compose up — запустить сервисы
- docker compose up -d — запуск в фоне
- docker compose down — остановить и удалить всё
- docker compose build — пересобрать образы
- docker compose pull — скачать образы
- docker compose logs — логи всех сервисов
- docker compose ps — статус сервисов
- docker compose restart — перезапуск

🧠 Полезные советы

- Используй --rm, чтобы контейнер удалялся после выполнения
- Проверяй размер Docker-данных через docker system df
- Для отладки всегда полезен docker inspect
- Регулярно чисти систему, чтобы Docker не съел весь диск

Эта шпаргалка закрывает 90% повседневных задач при работе с Docker - от локальной разработки до продакшена.

@pythonl
20🔥6👍5
🚀 Интерактивный помощник для Кодинга Mistral Vibe

Mistral Vibe - это командный интерфейс для взаимодействия с кодом, который позволяет использовать естественный язык для выполнения задач.

Он предлагает мощные инструменты для работы с файлами, поиска кода и управления версиями, обеспечивая удобный и интуитивный опыт.

🚀 Основные моменты:
- Интерактивный чат с AI для выполнения запросов.
- Набор инструментов для манипуляции файлами и выполнения команд.
- Автоматическое сканирование структуры проекта для контекстной информации.
- Высокая настраиваемость через конфигурационные файлы.
- Поддержка UNIX и Windows.

📌 GitHub: https://github.com/mistralai/mistral-vibe

@pythonl
🔥4👍1
🖼️ Qwen-Image-Layered: Модель для многослойной обработки изображений

Qwen-Image-Layered позволяет разбирать изображения на несколько RGBA слоев, обеспечивая возможность редактирования каждого слоя независимо. Это открывает новые горизонты для редактирования, позволяя выполнять операции с высоким качеством, такие как изменение размера и перекраска, без влияния на другие элементы.

🚀Основные моменты:
- Декомпозиция изображений на независимые слои.
- Поддержка высококачественного редактирования.
- Гибкость в количестве слоев для декомпозиции.
- Возможность редактирования с сохранением целостности других слоев.
- Интуитивно понятный интерфейс для работы с изображениями.

📌 GitHub: https://github.com/QwenLM/Qwen-Image-Layered

#python
3🤩2👍1
Forwarded from Kremniy;
Roadmap по Python

Привет! По немногочисленным просьбам, решив, что давно не радовал вас чем-то полезным, а только прогревал на стартапы и YouTube, посоветовавшись со знакомым питонистом, я подготовил Roadmap по Python — аналогичный моему Roadmap'у по Go. Я разместил его под Go-шным roadmap'ом. Всем, кому актуально, прошу посмотреть и написать свои правки, идеи, предложения!

Go & Python Roadmap 2025 😎

Реклама. Дмитриев А.С. ИНН 501214283070. erid: 2W5zFHbfpL8
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍3🔥2😁1
🖥 python-injection - практический сборник уязвимостей в Python

python-injection - это репозиторий с наглядными примерами инъекций и небезопасных паттернов в Python-коде, которые регулярно встречаются в реальных проектах.

Проект показывает, как «обычный» Python-код превращается в уязвимость, если не понимать, как именно работают интерпретатор, библиотеки и внешние вызовы.

Что внутри:

- Command Injection через os.system, subprocess, shell=True
- SQL Injection при неправильной работе с запросами
- Code Injection через eval, exec, pickle
- Path Traversal и небезопасная работа с файлами
- Template Injection
- Примеры небезопасной десериализации
- Реальные анти-паттерны из production-кода

Главная ценность репозитория — код, а не теория:
- есть уязвимый пример
- есть объяснение, почему он опасен
- понятно, как именно происходит атака

Подходит для:
- Python-разработчиков
- backend-инженеров
- security-энтузиастов
- code review и обучения безопасному программированию

Если ты пишешь Python и думаешь, что «у нас же не веб» - этот репозиторий стоит открыть.

pip install python-injection

https://github.com/100nm/python-injection
Please open Telegram to view this post
VIEW IN TELEGRAM
😁42