Установка Airflow на свой сервер: коротко и с данными
Конспект страницы: 7 разделов коротко, данные на 14 октября 2026 и ответы на 4 вопроса. Полный разбор с примерами: Установка Airflow на свой сервер.
Коротко
Установка Airflow на сервер сводится к нескольким командам: скачать официальный docker-compose.yaml, выполнить docker compose up airflow-init, запустить сервисы и открыть интерфейс на порту 8080. Документация просит выделить Docker не меньше 4 ГБ памяти и предупреждает, что этот compose-файл не обеспечивает безопасности, нужной для рабочего сервера. Для официального compose-файла берите сервер от 4 ГБ памяти, а если задачи сами обрабатывают данные, то 8 ГБ.
Конспект по разделам
Из чего состоит Airflow в Docker Compose
Airflow запускает по расписанию потоки задач, которые пишут на Python в виде DAG-файлов: «забрать выгрузку, обработать, положить в базу». Для этого официальный compose-файл поднимает несколько сервисов.
Сколько памяти и диска нужно Airflow
Документация называет единственное требование: Docker должен получить не меньше 4 ГБ памяти, иначе контейнеры работают нестабильно. Число ядер не указано. Для сервера с рабочими потоками редакция советует 4 ГБ как нижнюю границу, а ядра нужны ради параллельных задач.
Установка Airflow из официального docker-compose.yaml
- Создайте каталог и скачайте compose-файл нужной версии.
- Подготовьте папки dags, logs, plugins и config и запишите в.env идентификатор пользователя, иначе файлы в папках будут принадлежать root.
- Инициализируйте базу: команда docker compose up airflow-init создаёт таблицы и первого пользователя.
- Запустите сервисы и откройте порт 8080 через SSH-туннель.
Что изменить в compose-файле Airflow перед рабочим запуском
Когда задачи идут на одном сервере, можно заменить исполнитель CeleryExecutor на LocalExecutor: Redis и отдельный воркер тогда не нужны, но файл придётся править.
- Примеры DAG.
- Ключ Fernet.
- Порт.
- Пароль.
Диск Airflow: логи запусков, база метаданных и копии
Каждый запуск каждой задачи пишет файл в папку logs, и она растёт бесконечно. Оценка: число запусков в сутки, умноженное на средний размер лога и на дни хранения. Размер лога посмотрите через неделю командой du -sh logs, а старые файлы чистите по cron, например find logs -type f -mtime +30 -delete.
Prefect и Dagster вместо Airflow: когда они подходят
Airflow выбирают за распространённость и готовые интеграции. Prefect ближе тем, кто хочет запускать обычный код без отдельной папки DAG. Dagster удобен, когда важнее состояние самих данных.
Установите приложение без консоли
Маркетплейс ставит готовый образ на новый сервер: Docker, GitLab, Nextcloud, n8n и другие.
- Docker, n8n, OpenClaw, GitLab, Nextcloud
- Ставится при создании сервера
- Почасовая оплата сервера
- Root-доступ остаётся у вас
Данные
| Сервис | Что делает |
|---|---|
| Веб-интерфейс и API | Показывает запуски, логи, позволяет включать и останавливать потоки (порт 8080) |
| Планировщик | Решает, какая задача должна стартовать |
| Обработчик DAG-файлов | Читает папку dags (в Airflow 3 это отдельный сервис) |
| Воркер | Исполняет задачи |
| PostgreSQL и Redis | Метаданные запусков и очередь задач для воркеров |
| Airflow | Prefect | Dagster | |
|---|---|---|---|
| Как описывают работу | DAG-файл с задачами и расписанием | Обычные функции Python с декораторами | Данные, которые нужно получить (assets) |
| Запуск на сервере | Compose из нескольких сервисов | Команда prefect server start, интерфейс на порту 4200 | Команда dagster dev, интерфейс на порту 3000 |
| Лицензия | Apache 2.0 | Apache 2.0 | Apache 2.0 |
Данные на 14 октября 2026.
Вопросы и ответы
Как развернуть Airflow на сервере, если нет опыта с Docker?
Проще всего взять готовый сервер с Airflow из маркетплейса Таймвеб Клауд: 98 установок на 14 октября 2026. Свой compose-файл нужен, когда требуется контроль над версией.
Почему Airflow в Docker пишет, что AIRFLOW_UID не задан?
Файл.env с идентификатором пользователя не создан. Выполните echo -e "AIRFLOW_UID=$(id -u)" в.env рядом с docker-compose.yaml и запустите команды снова.
Чем Airflow отличается от Prefect и Dagster?
Airflow описывает работу DAG-файлами и расписанием, Prefect запускает обычные функции Python, Dagster строится вокруг данных. Все три распространяются по лицензии Apache 2.0.
Можно ли установить Airflow на Windows?
Напрямую нет: Airflow не поддерживает обычную Windows. Для проб его запускают в Docker Desktop или WSL2, а для рабочих потоков берут Linux-сервер.