https://github.com/ruanbekker/docker-apache-airflow
Apache Airflow using Docker Compose
https://github.com/ruanbekker/docker-apache-airflow
airflow airflow-docker docker docker-compose
Last synced: about 2 months ago
JSON representation
Apache Airflow using Docker Compose
- Host: GitHub
- URL: https://github.com/ruanbekker/docker-apache-airflow
- Owner: ruanbekker
- Created: 2021-08-12T06:24:38.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-08-12T12:43:46.000Z (almost 5 years ago)
- Last Synced: 2025-02-23T06:31:13.495Z (over 1 year ago)
- Topics: airflow, airflow-docker, docker, docker-compose
- Language: Python
- Homepage: https://ruan.dev
- Size: 12.7 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# docker-apache-airflow
Apache Airflow using Docker Compose
## Usage
### Docker Compose
Im using the [taskfile](https://taskfile.dev) build tool to simplify usage. But running without taskfile,
To build the dependency image:
```
docker-compose -f deps.docker-compose.yml build
```
Once the `airflow-dependencies:1.10.14` image is built, you can build the rest and start the containers:
```
docker-compose up --build -d
```
### Taskfile
Im using the [taskfile](https://taskfile.dev) build tool to simplify usage.
To install on a mac:
```
brew install go-task/tap/go-task
```
To install on linux:
```
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin
```
Then for help run:
```
task
task: Available tasks for this project:
* build: Builds airflow
* clean: Runs docker system prune -f --all
* default: Runs the help task
* down: Stops containers
* help: Runs the list tasks
* logs: Runs docker-compose logs -f
* run: Runs docker-compose up -d
* verify: Verify if docker is running
```
To build and start:
```
task build
task run
```
## Endpoints
The default username is `admin` and the password is `password` but configurable on the environment variable `AIRFLOW_ADMIN_PASSWORD`.
Airflow:
- http://localhost:8080
Flower:
- http://localhost:5556
## Screenshots
Airflow UI:

Graph View:

Flower Dashboard:

Detail about the worker:

Executed Tasks:

Broker:

## Resources
- [Airflow Executor: Celery](https://airflow.apache.org/docs/apache-airflow/1.10.6/howto/executor/use-celery.html)
- [Flower: Authentication](https://airflow.apache.org/docs/apache-airflow/stable/security/flower.html)
- [Github/Airflow: Example docker-compose.yml](https://github.com/apache/airflow/blob/main/docs/apache-airflow/start/docker-compose.yaml)
- [Blog: Deploy Airflow in Multiple Containers](https://towardsdatascience.com/deploy-apache-airflow-in-multiple-docker-containers-7f17b8b3de58)
- [Blog: Run Airflow in Docker](https://betterprogramming.pub/how-to-start-running-apache-airflow-in-docker-6567d8165653)