Airflow Summit 2025 將於 10 月 07-09 日舉行。立即註冊可享早鳥票優惠!

快速入門

本快速入門指南將幫助您在本地機器上啟動一個 Airflow 獨立例項。

注意

成功安裝需要 Python 3 環境。從 Airflow 2.7.0 開始,Airflow 支援 Python 3.9、3.10、3.11 和 3.12。

官方支援的安裝方法包括 pipuv。這兩個工具都為安裝 Airflow 和管理依賴項提供了簡化的工作流程。

雖然使用 poetrypip-tools 等其他工具也取得了一些成功,但它們與 pipuv 的工作流程不同——尤其是在約束檔案與 requirements 檔案管理方面。目前不支援透過 Poetrypip-tools 進行安裝。

如果您希望使用這些工具安裝 Airflow,應使用約束檔案,並將其轉換為您工具所需的適當格式和工作流程。

本指南將幫助您使用 uv 快速設定 Apache Airflow,uv 是一個用於管理 Python 環境和依賴項的快速且現代的工具。uv 使安裝過程變得簡單,並提供流暢的設定體驗。

  1. 設定 Airflow Home (可選):

    Airflow 需要一個主目錄,預設使用 ~/airflow,但如果您願意,可以設定一個不同的位置。AIRFLOW_HOME 環境變數用於告知 Airflow 所需的位置。設定此環境變數的步驟應在安裝 Airflow 之前完成,以便安裝過程知道將必要檔案儲存在哪裡。

    export AIRFLOW_HOME=~/airflow
    
  2. 使用 uv 安裝 Airflow

    安裝 uv: uv 安裝指南

    使用 uv 建立虛擬環境,請參閱此處的文件: 使用 uv 建立和維護本地虛擬環境

  3. 使用約束檔案安裝 Airflow,該檔案根據我們傳遞的 URL 確定

    AIRFLOW_VERSION=3.0.0
    
    # Extract the version of Python you have installed. If you're currently using a Python version that is not supported by Airflow, you may want to set this manually.
    # See above for supported versions.
    PYTHON_VERSION="$(python -c 'import sys; print(f"{sys.version_info.major}.{sys.version_info.minor}")')"
    
    CONSTRAINT_URL="https://raw.githubusercontent.com/apache/airflow/constraints-${AIRFLOW_VERSION}/constraints-${PYTHON_VERSION}.txt"
    # For example this would install 3.0.0 with python 3.9: https://raw.githubusercontent.com/apache/airflow/constraints-3.0.0/constraints-3.9.txt
    
    uv pip install "apache-airflow==${AIRFLOW_VERSION}" --constraint "${CONSTRAINT_URL}"
    
  4. 執行 Airflow Standalone

    airflow standalone 命令初始化資料庫、建立使用者並啟動所有元件。

    airflow standalone
    
  5. 訪問 Airflow UI

    在瀏覽器中訪問 localhost:8080,並使用終端中顯示的 admin 賬戶詳情登入。在主頁啟用 example_bash_operator DAG。

執行這些命令後,Airflow 將建立 $AIRFLOW_HOME 資料夾,並建立帶有預設設定的“airflow.cfg”檔案,以便您快速開始。您可以使用環境變數覆蓋預設設定,請參閱 配置參考。您可以在 $AIRFLOW_HOME/airflow.cfg 中,或透過 UI 的 Admin->Configuration 選單檢查該檔案。如果由 systemd 啟動,webserver 的 PID 檔案將儲存在 $AIRFLOW_HOME/airflow-webserver.pid/run/airflow/webserver.pid 中。

隨著您的成長並將 Airflow 部署到生產環境,您也會希望從此處使用的 standalone 命令轉向單獨執行各個元件。您可以在 生產部署 中瞭解更多資訊。

以下是一些將觸發幾個任務例項的命令。執行以下命令時,您應該能在 example_bash_operator DAG 中看到作業狀態的變化。

# run your first task instance
airflow tasks test example_bash_operator runme_0 2015-01-01
# run a backfill over 2 days
airflow backfill create --dag-id example_bash_operator \
    --start-date 2015-01-01 \
    --end-date 2015-01-02

如果您想手動執行 Airflow 的各個部分,而不是使用一體化的 standalone 命令,可以執行

airflow db migrate

airflow users create \
    --username admin \
    --firstname Peter \
    --lastname Parker \
    --role Admin \
    --email spiderman@superhero.org

airflow api-server --port 8080

airflow scheduler

airflow dag-processor

airflow triggerer

注意

airflow users 命令僅在 Flask AppBuilder (FAB) auth manager 啟用時可用。

下一步是什麼?

從這一點開始,您可以前往 教程 部分獲取更多示例,或者如果您已準備好實踐,可以前往 操作指南 部分。

此條目有幫助嗎?