如何将puckeldocker-airflow连接到本地windows SQL Server?

问题描述 投票:1回答:1

所以,我试图从airflow dag连接到我在windows上的SQL Server本地实例。

主要的错误是,即使在docker文件中明确提到了pyodbc或pymmssql库也没有安装。我遵循了来自 适用于SQL Server的微软ODBC驱动程序 在 Debian 9 和 中型 因为镜像是建立在它上面的。

dag中的所有任务都运行正常,除了我试图连接到SQL Server的那个任务出现错误。

[2020-04-03 22:23:42,303] {{taskinstance.py:1128}}。ERROR - 没有名为 "pyodbc "的模块。

如果我试着从气流容器中进行管道安装,它就不能安装在 /usr/lib/python3.7/site-packages 而无法导入到dag中。

我也在卷中加入了requirements.txt,但没有任何收获。

有人在这种情况下成功连接了吗?

sql-server airflow python-3.7 pyodbc
1个回答
1
投票

我能够解决这个问题,通过建立Docker文件的形式的airflow图像,而建设你需要添加一些依赖。

sqlalchemy:

&& pip3 uninstall SQLAlchemy \
&& pip3 install SQLAlchemy==1.3.15 \

sqlalchemy: pyodbc:

&& apt-get install python3-dev -y\
&& apt-get install unixodbc-dev -y\
&& pip3 install pyodbc \

另一个漫长的方法是将用户名为root,然后从容器中构建镜像和ap-get安装,并将用户改为airflow,但如果你知道你要安装的是什么,这将是更有效的。

© www.soinside.com 2019 - 2024. All rights reserved.