如何将精灵/docker气流连接到本地windows SQL Server



因此,我正试图从airflow dag连接到windows上的SQL Server本地实例。

主要错误是,即使在docker文件中明确提及pyodbc或pymmssql库,也不会安装它们。我已经按照Debian 9和Medium下用于SQL Server的Microsoft ODBC驱动程序的说明进行了操作,因为图像是在它上面构建的

dag中的所有任务都运行良好,除了我试图连接到SQL Server时出现错误的任务:

〔2020-04-03 22:23:42303〕{{taskinstance.py:1128}}错误-没有模块命名为"pyodbc">

如果我尝试从气流容器安装pip,它不会安装在/usr/lib/python3.7/site-packages中,也无法在dag中导入。

我也在卷中包含了requirements.txt,但运气不好。

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

我能够通过从Dockerfile构建气流图像来解决这个问题。在构建时,您需要添加一些依赖项。

sqlalchemy:

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

pyodbc:

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

另一个很长的方法是将USER更改为root,并从容器中构建映像和ap get install,然后将USER改回airflow,但如果您知道要安装什么,这会更有效。

相关内容

  • 没有找到相关文章

最新更新