■ はじめに
https://dk521123.hatenablog.com/entry/2021/07/18/004531
で、ローカル上に Airflowの環境を構築したが、 いつの間にか環境がぶっつぶれた。 どうせなら、Dockerでやってみようと思ったので、メモ。
目次
【1】前提条件 【2】構築環境例 【3】構築手順 1)docker-compose.yml のダウンロード 2)インストール前の下準備 3)airflow-initを実行 4)airflowを起動 5)確認 6)後片付け
【1】前提条件
* Docker がインストールされていること * 以下の関連記事を参照のこと。
Docker Desktop / WSL2 ~ Windows / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2020/12/08/165505
Docker ~ Linux / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2018/04/10/234030
【2】構築環境例
* OS : Windows10 / Ubuntu 20.04.2 LTS * Python : Python 3.9.7 * Airflow : v2.1.4
【3】構築手順
* 公式サイトに記載されている
https://airflow.apache.org/docs/apache-airflow/stable/howto/docker-compose/index.html
1)docker-compose.yml のダウンロード
mkdir airflow-docker cd airflow-docker/ curl -LfO https://airflow.apache.org/docs/apache-airflow/stable/docker-compose.yaml
2)インストール前の下準備
# 必要なディレクトリやファイルを作成 mkdir ./dags ./logs ./plugins echo -e "AIRFLOW_UID=$(id -u)\nAIRFLOW_GID=0" > .env
3)airflow-initを実行
* 以下を実行
コマンド
# docker-compose up airflow-init
docker compose up airflow-init
注意点1
もし、コマンド後に以下のようなエラーになった場合、 docker-compose のバージョンが古い可能性があり。 ~~~~ ERROR: The Compose file './docker-compose.yaml' is invalid because: Unsupported config option for services.airflow-cli: 'profiles' Invalid top-level property "x-airflow-common". Valid top-level sections for this Compose file are: version, services, networks, volumes, and extensions starting with "x-". ~~~~ 対応方法などの詳細は、以下の関連記事を参照のこと。
https://dk521123.hatenablog.com/entry/2021/10/03/000000
注意点2
* ちなみに、v2.0.2にしたら怒られた。。。 ~~~~~~ ERROR!!!: Too old Airflow version 2.0.2! The minimum Airflow version supported: 2.1.0. Only use this or higher! ~~~~~~
4)airflowを起動
* 以下を実行 => 結構、時間が掛かる。
コマンド
# docker-compose up
docker compose up
5)確認
a) Web UI
* ブラウザで Web UI にアクセスするために、以下にアクセス。
* Login ページになったら、以下を入力。 + Login : airflow + Password : airflow
https://codeclef.medium.com/apache-airflow-using-docker-along-with-the-authentication-caa3522111c4
b) Flower
=> タスクやワーカー数の調整などを行うWeb UI * ブラウザで Flower にアクセスするために、以下にアクセス。
6)後片付け
docker compose stop
docker compose down
参考文献
公式ドキュメント
https://airflow.apache.org/docs/apache-airflow/stable/start/docker.html
動画
https://www.youtube.com/watch?v=aTaytcxy2Ck
その他
https://dev.classmethod.jp/articles/trying-apache-airflow-quick-start-docker/
関連記事
Apache Airflow ~ 基礎知識編 ~
https://dk521123.hatenablog.com/entry/2021/09/28/135510
Apache Airflow ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2021/07/18/004531
Apache Airflow ~ 環境構築 / Kubernetes 編 ~
https://dk521123.hatenablog.com/entry/2023/05/13/000000
Apache Airflow ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2021/07/24/233012
Apache Airflow ~ 基本編 ~
https://dk521123.hatenablog.com/entry/2021/07/28/234319
Apache Airflow ~ CLI ~
https://dk521123.hatenablog.com/entry/2021/10/21/130702
Apache Airflow ~ あれこれ編 ~
https://dk521123.hatenablog.com/entry/2021/09/30/163020
Apache Airflow ~ 通知あれこれ編 ~
https://dk521123.hatenablog.com/entry/2021/10/06/141323
Apache Airflow ~ 通知サンプル編 ~
https://dk521123.hatenablog.com/entry/2021/10/09/000000
Apache Airflow に関するトラブル
https://dk521123.hatenablog.com/entry/2021/10/03/000000
MWAA ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2021/09/29/131101
Docker Desktop / WSL2 ~ Windows / 環境構築編 ~
https://dk521123.hatenablog.com/entry/2020/12/08/165505
Windows / Docker Desktop でのトラブル
https://dk521123.hatenablog.com/entry/2020/12/11/115814
Docker ~ 基本編 / dockerコマンド ~
https://dk521123.hatenablog.com/entry/2020/04/13/000000
Docker ~ 基本編 / docker-compose ~
https://dk521123.hatenablog.com/entry/2020/04/11/000000
Docker compose ~ 拡張フィールド ~
https://dk521123.hatenablog.com/entry/2024/08/21/000445
Python ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2014/08/07/231242