airflow ======= ![](https://airflow.apache.org/_images/pin_large.png) ## How It Works ``` +---------+ +--> | Worker1 | redis | +---------+ postgres | +--------+ | +---------+ | Master | <--+--> | Worker2 | +--------+ | +---------+ webserver | scheduler | +---------+ flower +--> | Worker3 | +---------+ ``` ## Quick Start ```bash $ docker stack deploy -c docker-stack.yaml airflow $ docker service update --replicas-max-per-node=1 airflow_worker $ docker service update --replicas 3 airflow_worker $ curl http://localhost:8080/ $ curl http://localhost:5555/ ``` > :warning: You need to prepare nfs server with `airflow.cfg`. ``` $ python -c 'from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())' CD2wL7G0zt1SLuO4JQpLJuHtBaBEcXWKbQyvkvf2cZ8= ``` > :warning: You should set another value to `fernet_key` in `airflow.cfg` to improve security.