docker - Docker 中的 Airflow : how to add DAGs to Airflow?

标签 docker ubuntu airflow

我想将 DAG 文件添加到 Airflow,它在 Ubuntu 的 Docker 中运行。我使用了以下 git repository ,包含配置和指向 docker 镜像的链接。当我运行 docker run -d -p 8080:8080 puckel/docker-airflow webserver 时,一切正常。但是我找不到安全地将 DAG 添加到 Airflow 的方法。或者,我运行 docker run -d -p 8080:8080 puckel/docker-airflow webserver -v/root/dags:/usr/local/airflow/dags,也没有成功。

我尝试编辑 /config/airflow.cfg 并将 git 凭据添加到包含 dags 的存储库,但没有成功。此外,在 home/root/dags 中添加了一个文件夹 /dags,其中包含 DAG,假设此文件夹与 Docker 容器共享。但也没有成功。

Docker composer 文件包含以下音量设置:

webserver:
        image: puckel/docker-airflow:1.10.0-2
        ...
        volumes:
            - ./dags:/usr/local/airflow/dags 

但是,当我将内容添加到运行 Docker 容器的文件夹中的 ./dags 时,DAG 不会出现在 Airflow 中。

当 Airflow 在 Docker 中运行时,我如何安全地将 DAG 添加到它?

最佳答案

加卷才是正确的做法

docker run -d -p 8080:8080 -v /path/to/dags/on/your/local/machine/:/usr/local/airflow/dags  puckel/docker-airflow webserver

following post by Mark Nagelberg 中描述了完整的解释

关于docker - Docker 中的 Airflow : how to add DAGs to Airflow?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52358255/

相关文章:

bash - Ubuntu 脚本在 CRON 中不起作用

apache - "Unexpected token H in JSON at position 0"Apache Web 服务器上的 SignalR 核心和 Kestrel

python - 使用XCom在类之间交换数据?

python - 在 Google Cloud Composer 中浏览 DAG 任务信息时,Airflow 抛出与时区相关的 TypeError

docker - 在 Redis 容器上使用 Redis-CLI

c++ - 如何在 64 位 Ubuntu 系统上安装简单的 Intel C/C++ 编译器?

mysql - 并发数据库创建

airflow - 将其他参数传递给 on_failure_callback

docker - 在 Redhat 中安装 Docker CE

docker - 使用Kubernetes时,您真的需要在kubernetes中使用其他服务发现或API网关解决方案吗?