Skip to main content
 首页 » 编程设计

python之docker Airflow 配置问题 (puckel/docker)

2025年05月04日25zhenyulu

拉取docker镜像后from here附上shell后,我意识到教程文件不在airflow.cg中指定的dag文件夹中(dags_folder =/usr/local/airflow/dags,文件夹dags不存在)。 教程文件实际上是在这里找到的:

/usr/local/lib/python3.6/site-packages/airflow/example_dags/tutorial.py

此外,运行 airflow list_dag 会引发有关 kubernetes 未安装 bieng 的警告,并且我缺少为 vim 等应用程序运行 apt-get 以编辑 py 文件,甚至运行 ps 以查看进程的权限。

由于我是 docker 和 airflow 的新手,在构建时我需要在 dockerfile 中更改什么吗?

注意:我正在使用 Docker for windows 来构建 linux 镜像。

请您参考如下方法:

有关 Kubernetes 的警告来自于 airflow[kubernetes] 模块不是默认安装在 Puckel 的 Dockerfile 中,但除非您想使用 Airflow 的 KubernetesPodOperator,否则无需担心。

当你进入容器时,你没有权限编辑 python 模块也是正常的,因为你在那里登录为用户 airflow 而不是 root 并且该用户只有写权限到 $AIRFLOW_HOME 目录。一般来说,从容器内部编辑文件是骇人听闻的,您应该尽量避免这种情况。

如果我猜对了,你想要做的是从 airflow-docker 加载你自己的 dag。如果是这种情况,您可以运行如下命令:

docker run -d -p 8080:8080 -v <local_path_to_your_dags>:/usr/local/airflow/dags  puckel/docker-airflow webserver 

在这里,您将本地文件夹从您的机器挂载到容器中的 HOME/dags 文件夹,这是用于加载 dags 的文件夹。