Docker & Python

Часть 3 – докер файл (dockerfile) В предыдущих постах «Часть 1 – терминология» мы рассмотрели основные термины и в части “Часть 2 – основные команды” провели обзор основных команд по управлению докер. Теперь расмотрим, что такое докер файл, зачем он нужен и как его создавать. Сам по себе докер файл…

подробнее

Docker & Python

Часть 2 – основные команды В предыдущем посте «Часть 1 – терминология» мы рассмотрели основные термины, теперь посмотрим на основные команды для работы с докер. Общее состояние докер docker info эта команда отвечает за вывод текущего состояния докер, а именно количество образов в кэше, количество запушённых контейнеров, версии библиотек докер…

подробнее

Docker & Python

Часть 1 – Терминология Образ (Image) Образ – это доступный только для чтения набор окружения для приложения. За основу для такого образа выбирается специально подготовленный образ операционной системы, например Ubuntu. После чего на основу накладываются дополнительные изменения, как то установка необходимых библиотек и программ. Существует целый репозиторий с базовыми образами…

подробнее

Зависает PyCharm

Случилась как то у меня неприятность, стал при запуске зависать PyCharm. Выражалось это поведение в появлении заставки и дальге все, ничего не происходило. В логах было обнаружено: ERROR – llij.ide.plugins.PluginManager – java.net.BindException: Address already in use: bind java.util.concurrent.CompletionException: java.net.BindException: Address already in use: bind проблема решилась выполнением команд в командной…

подробнее

Как использовать Django в скриптах python

Иногда возникает необходимость выполнить некоторый крипт и использовать в нем django модели. В тком случае можно воспользоваться таким трюком (взял с stackoveflow): в sys.path добавляется путь к проекту (если файл лежит в проекте то можно использовать эти строки), потом выполняется настройка проекта и запуск django через вызов метода setup(), а дальше…

подробнее

ASYNCIO PYTHON

Важно понить, что асинхронность это не паралельное выполнение задач, а кооперативная много задачность (то есть все процессы обязаны уступать задачи время другим, это происходит в моменты ожидания операций ввода-вывода. Самое первое, с чего начинается работа с асинхронным кодом это получение или создание цикла событий. Простыми словами это бесконечный цикл, который…

подробнее

Как работают иерархии классов в Python (часть 2)

В первой части мы разобрали, основы того, как происходит вызов классов в иерархии Python. Давайте же рассмотрим обещанные интересности.  Отсутствие обращения к родителю Изменим пример из первой части. Пускай класс B полностью реализует всю функциональность без обращения к родителю (я не призываю так делать без четкого осознания, что вы делаете…

подробнее

Как работают иерархии классов в Python (часть 1)

Давайте разберемся как работает вызов иерархических методов в Python. Для начала самый простой вариант (в котором все понятно): Есть иерархия классов (А это корень иерархии), заним потомки B и C, и самый низ иерархии D и E. Суть примера в том, что каждый из потомков вносит какое то изменение в…

подробнее

Изменение в gitinore и исключение файлов из мониторинга git

Как то случилась у меня проблема забыл сразу создать gitignore файл и добавил проект в репозиторий. Получилось куча не нужной инфы в нем (как то бинарные файлы python, библиотеки и т.п.) Добавление всего этого в gitignore  проблему не решило так как проект был уже закомичен в удаленный репозиторий, где все…

подробнее