docker airflow configuration issues (puckel/docker)

dir*_*0lf 1 python docker airflow

After pulling the docker image from here I realised after attaching a shell that the tutorial files are not in the dag folder specified in airflow.cg (dags_folder = /usr/local/airflow/dags, the folder dags does not exist). The tutorial file is actually found here instead:

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

In addition, running a airflow list_dag raises warnings about kubernetes not bieng installed and I am missing the permissions to run apt-get for applications like vim to edit py files, or even run ps to view processes.

由于我是docker和airflow的新手,因此在构建时需要在dockerfile中进行任何更改吗?

注意:我在Windows上使用Docker来构建linux映像。

Ale*_*ino 5

有关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
Run Code Online (Sandbox Code Playgroud)

在这里,您将机器上的本地文件夹安装到容器中的HOME / dags文件夹中,该文件夹是用于加载dag的文件夹。