blob: e2ac0723c42f83c97140d10c7979179d83ab80bf [file] [log] [blame]
# INSTALL / BUILD instructions for Apache Airflow
This ia a generic installation method that requires a number of dependencies to be installed.
Depending on your system you might need different prerequisites, but the following
systems/prerequisites are known to work:
Linux (Debian Buster and Linux Mint Tricia):
sudo apt install build-essentials python3.6-dev python3.7-dev python-dev openssl \
sqlite sqlite-dev default-libmysqlclient-dev libmysqld-dev postgresq
MacOS (Mojave/Catalina):
brew install sqlite mysql postgresql
# [required] fetch the tarball and untar the source move into the directory that was untarred.
# [optional] run Apache RAT (release audit tool) to validate license headers
# RAT docs here: https://creadur.apache.org/rat/. Requires Java and Apache Rat
java -jar apache-rat.jar -E ./.rat-excludes -d .
# [optional] Airflow pulls in quite a lot of dependencies in order
# to connect to other services. You might want to test or run Airflow
# from a virtual env to make sure those dependencies are separated
# from your system wide versions
python3 -m venv PATH_TO_YOUR_VENV
source PATH_TO_YOUR_VENV/bin/activate
# [required] building and installing by pip (preferred)
pip install .
# or directly
python setup.py install
# You can also install recommended version of the dependencies by using
# requirements-python<PYTHON_MAJOR_MINOR_VERSION>.txt as constraint file. This is needed in case
# you have problems with installing the current requirements from PyPI.
# There are different requirements for different python versions. For example"
pip install . --constraint requirements/requirements-python3.7.txt
# You can also install Airflow with extras specified. The list of available extras:
# START EXTRAS HERE
all, all_dbs, async, atlas, aws, azure, cassandra, celery, cgroups, cloudant, dask, databricks,
datadog, devel, devel_ci, devel_hadoop, doc, docker, druid, elasticsearch, gcp, gcp_api,
github_enterprise, google_auth, grpc, hashicorp, hdfs, hive, jdbc, jira, kerberos, kubernetes, ldap,
mongo, mssql, mysql, odbc, oracle, pagerduty, papermill, password, pinot, postgres, presto, qds,
rabbitmq, redis, salesforce, samba, segment, sendgrid, sentry, singularity, slack, snowflake, ssh,
statsd, tableau, vertica, webhdfs, winrm, yandexcloud
# END EXTRAS HERE
# For installing Airflow in development environments - see CONTRIBUTING.rst