在Docker容器上安装依赖项-气流



我使用Docker容器来运行一些python脚本。我需要在集装箱中安装pymssql。我已经运行了CLI并使用pip install pymssql来安装这个包。虽然,当我刷新我的气流网页,它一直显示我一个错误,pymssql没有安装:

Broken DAG: [/opt/airflow/dags/utils/havanutils/__init__.py] Traceback (most recent call last):
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/opt/airflow/dags/utils/havanutils/__init__.py", line 4, in <module>
import pymssql
ModuleNotFoundError: No module named 'pymssql'

我正在运行命令行在Docker桌面像这样的图像。

我运行的命令行是否正确?或者这个包应该通过另一个CLI安装?

您应该在docker构建期间安装pymssql。否则每次你停止容器,你必须重新安装pymssql

您应该在Dockerfile中添加以下行:

RUN pip install pymssql;如果只有一个安装或

RUN pip install -r requirements.txt并将您的安装添加到requirements.txt文件中,如pymssql==2.2.2

Docker镜像在运行时是不可变的。

你应该创建你的镜像镜像,把它推送到Docker注册表,然后让你的气流任务使用

最新更新