apache-airflow-providers-docker
变更日志¶
4.3.1¶
杂项¶
使 '@task' 从 airflow.sdk 导入 (#48896)
4.3.0¶
新特性¶
使 docker swarm 服务 名称 可定制 (#47957)
4.2.1¶
杂项¶
将 flit 升级到 3.11.0 (#46938)
4.2.0¶
注意
此版本没有代码改动。由于之前版本存在打包问题而被撤回,因此重新发布此版本。
4.1.0¶
新特性¶
新特性: 支持 docker operator 参数 'labels' (#46643)
错误修复¶
修复 f-string ruff 静态检查 (#46813)
在 find 命令中 使用引号 引用文件路径 (#46795)
更新 DockerSwarmOperator 的 auto_remove 参数以与 DockerOperator 对齐 (#45745)
杂项¶
在 find 命令中 使用 env 引用文件路径 (#46809)
AIP-72: 在 SDK 中支持更好的 Context 字典类型提示 (#45583)
将 Literal 别名移至 TYPE_CHECKING 块中 (#45345)
4.0.0¶
注意
此提供程序版本仅适用于 Airflow 2.9+,具体说明请参阅 Apache Airflow 提供程序支持政策。
重大变更¶
警告
所有已弃用的类、参数和功能已从 Kubernetes 提供程序包中移除。以下是引入的重大变更:
- 装饰器
已移除弃用的参数
use_dill
。请改用serializer='dill'
。
- Operator
已移除弃用的参数
use_dill
。请改用serializer='dill'
。已移除弃用的参数
skip_exit_code
。请改用skip_on_exit_code
。已移除弃用的方法
get_hook()
。请改用hook
属性。
移除 Docker 中的提供程序弃用项 (#44583)
杂项¶
将提供程序中的最低 Airflow 版本提升至 Airflow 2.9.0 (#44956)
修复 docker 文档中的 auth url (#44112)
更新多个提供程序文档中的 DAG 示例链接 (#44034)
3.14.1¶
错误修复¶
修复 Docker operator 日志中开头的空格 (#33692) (#43840)
杂项¶
将 python operator 移至 Standard 提供程序 (#42081)
3.14.0¶
新特性¶
为 DockerSwarmOperator 添加 logging device 和 logging device options (#41416)
为 docker swarm operator 添加 retrieve output 功能 (#41531)
3.13.0¶
注意
此提供程序版本仅适用于 Airflow 2.8+,具体说明请参阅 Apache Airflow 提供程序支持政策。
杂项¶
新特性(docker): 将 'use_dill' 替换为 'serializer' (#41356)
将提供程序中的最低 Airflow 版本提升至 Airflow 2.8.0 (#41396)
3.12.3¶
错误修复¶
DockerSwarmOperator: 支持服务日志中的换行符 (#40705)
3.12.2¶
错误修复¶
DockerOperator TaskFlow - 修正 python 命令中的参数拼写 (#39620)
杂项¶
改进 DockerOperator 的日志记录行为 (#40489)
3.12.1¶
杂项¶
将最低 docker 版本提升至 7.1.0 (#39839)
3.12.0¶
新特性¶
为 docker service ContainerSpec 添加 args (#39464)
为 DockerSwarmOperator 添加定义 Resources 的支持 (#39027)
杂项¶
加快 'airflow_version' 导入速度 (#39552)
简化 'airflow_version' 导入 (#39497)
限制 botocore 升级测试中的 requests (#39747)
由于与 docker-py 不兼容,锁定 requests 版本 (#39740)
3.11.0¶
注意
此提供程序版本仅适用于 Airflow 2.7+,具体说明请参阅 Apache Airflow 提供程序支持政策。
杂项¶
将提供程序中的最低 Airflow 版本提升至 Airflow 2.7.0 (#39240)
3.10.0¶
注意
当设置了标准的 DOCKER_HOST
环境变量时,它现在会覆盖 docker_url
参数的默认值。如果设置了 DOCKER_HOST
但您想使用之前的默认值,则必须在 DockerOperator
构造函数或 @task.docker
装饰器中显式设置 docker_url="unix://var/run/docker.sock"
。
新特性¶
改进 'DockerOperator' 以支持多个 Docker 主机 (#38466)
错误修复¶
修复 'MappedOperator' 中弃用的 'DockerOperator' operator 参数 (#38379)
杂项¶
移除 importlib_metadata 中冗余的兼容性用法 (#38368)
DockerOperator: 使用 DOCKER_HOST 作为 docker_url 的默认值 (#38387)
3.9.2¶
错误修复¶
修复 'docker>=7' 的 'docker.TLSConfig' 构造问题 (#37481)
3.9.1¶
错误修复¶
允许 DockerOperator.skip_on_exit_code 为零 (#36360)
杂项¶
移除 Docker Provider 中剩余的 Airflow 2.5 向后兼容代码 (#36325)
3.9.0¶
注意
此提供程序版本仅适用于 Airflow 2.6+,具体说明请参阅 Apache Airflow 提供程序支持政策。
错误修复¶
修复 'enable_logging=True' 在 'DockerSwarmOperator' 中不工作的问题 (#35677)
修复由 #35677 导致的日志流损坏问题 (#36127)
杂项¶
将提供程序中的最低 Airflow 版本提升至 Airflow 2.6.0 (#36017)
在子类中遵循 BaseHook connection fields 方法签名 (#36086)
3.8.2¶
杂项¶
重构 docker operator 属性验证和文档 (#35571)
3.8.1¶
错误修复¶
修复 '_DockerDecoratedOperator' 模块类型属性 pickle 错误 (#35293)
3.8.0¶
注意
此提供程序版本仅适用于 Airflow 2.5+,具体说明请参阅 Apache Airflow 提供程序支持政策。
新特性¶
为 DockerOperator 添加 ulimits 参数 (#34284)
杂项¶
提升提供程序的最低 airflow 版本 (#34728)
在 DockerOperator 中弃用 get_hook 方法 (#34432)
3.7.5¶
杂项¶
清理 Docker operator 的日志记录 (#33914)
在 Airflow 提供程序中用解包替换序列连接 (#33933)
在提供程序中使用字面量字典代替调用 dict() (#33761)
在 DockerOperator 中用 isinstance 替换 type func (#33759)
3.7.4¶
杂项¶
重构: 改进重复项检测和列表排序 (#33675)
简化其他提供程序中 len() 的条件 (#33569)
用适当的格式化替换 repr() (#33520)
3.7.3¶
杂项¶
重构: 简化 providers/docker 中的代码 (#33232)
3.7.2¶
杂项¶
移除 Python2 中的数字遗留代码 (#33050)
3.7.1¶
注意
此版本放弃了对 Python 3.7 的支持
杂项¶
移除对 Python 3.7 的支持 (#30963)
3.7.0¶
注意
此提供程序版本仅适用于 Airflow 2.4+,具体说明请参阅 Apache Airflow 提供程序支持政策。
杂项¶
提升提供程序中的最低 Airflow 版本 (#30917)
3.6.0¶
新特性¶
在 'DockerOperator' 和 'KubernetesPodOperator' 的跳过逻辑中添加多种退出代码处理 (#30769)
在 'DockerOperator' 中,添加属性 'tls_verify' 以选择是否验证证书 (#30309) (#30310)
杂项¶
在 'DockerOperator' 和 'KubernetesPodOperator' 中弃用 'skip_exit_code' (#30733)
3.5.1¶
错误修复¶
修复装饰器 'task.docker' 中的 template_fields (#29586)
3.5.0¶
新特性¶
在 Docker Hook 中添加正确的 widgets (#28700)
使 docker operators 始终使用 'DockerHook' 进行 API 调用 (#28363)
当 DockerOperator task 返回指定的退出代码时跳过该任务 (#28996)
错误修复¶
修复 Docker 连接中 'reauth' 字段的标签名称 (#28974)
3.4.0¶
新特性¶
为 DockerOperator 添加 hostname 参数 (#27822)
将 Docker Provider 的最低 airflow 版本降至 2.3.0 (#28648)
3.3.0¶
注意
此提供程序版本仅适用于 Airflow 2.3+,具体说明请参阅 Apache Airflow 提供程序支持政策。
杂项¶
将所有提供程序的最低 airflow 版本移至 2.3.0 (#27196)
新特性¶
为 DockerOperator 添加 ipc_mode (#27553)
为 Docker Operator 添加 env-file 参数 (#26951)
3.2.0¶
新特性¶
为 docker operator 添加日志记录选项 (#26653)
为 custom_operator_name 添加 pre-commit 钩子 (#25786)
实现 ExternalPythonOperator (#25780)
错误修复¶
3.1.0¶
新特性¶
在 DockerOperator 执行后强制移除容器 (#23160)
错误修复¶
'DockerOperator' 修复 cli.logs 返回字符数组而不是字符串的问题 (#24726)
3.0.0¶
重大变更¶
注意
此提供程序版本仅适用于 Airflow 2.2+,具体说明请参阅 Apache Airflow 提供程序支持政策。
杂项¶
从 'DockerOperator' 中移除 'xcom_push' (#23981)
docker 新系统测试 (#23167)
2.7.0¶
新特性¶
为 'DockerOperator' 添加 'device_requests' 参数 (#23554)
错误修复¶
修复 main 中的新的 MyPy 错误 (#22884)
2.6.0¶
新特性¶
为 'DockerOperator' 添加 timeout 参数 (#22502)
2.5.2¶
错误修复¶
修复错误地为所有提供程序添加 install_requires 的问题 (#22382)
杂项¶
修正 'multiple_outputs' 参数描述中提到列表/元组的部分 (#22371)
2.5.1¶
错误修复¶
避免在 Docker 容器未成功时尝试杀死容器 (#22145)
杂项¶
在 PyPI 中添加 Trove 分类器 (Framework :: Apache Airflow :: Provider)
2.5.0¶
新特性¶
添加了 docker network_mode 选项 (#21986)
杂项¶
支持 Python 3.10
2.4.1¶
错误修复¶
修复 Docker xcom 功能问题 (#21175)
修复 docker 返回字节行时的行为问题 (#21429)
2.4.0¶
新特性¶
允许 DockerOperator 的 image 参数支持模板 (#19997)
2.3.0¶
新特性¶
为 DockerSwarmOperator 添加 placement 支持 (#18990)
错误修复¶
修正字符串连接问题 (#19099)
移除 docker timeout 变通方案 (#18872)
其他¶
将 docker 装饰器示例 dag 移至 docker 提供程序 (#18739)
2.2.0¶
新特性¶
添加一个 Docker Taskflow 装饰器 (#15330)
此版本的 Docker 提供程序包含一个新特性 - TaskFlow 装饰器,该特性仅适用于 Airflow 2.2。如果您在低于 Airflow 2.2 的版本中尝试使用该装饰器,将会出错。
AttributeError: '_TaskDecorator' object has no attribute 'docker'
2.1.1¶
新特性¶
为 DockerSwarmOperator 添加 对 configs, secrets, networks 和 replicas 的 支持 (#17474)
杂项¶
优化 Airflow 2.2.0 的 连接 导入
2.1.0¶
新特性¶
在 DockerOperator 中 添加 禁用 临时 文件夹 挂载 的 选项 (#16932)
Bug 修复¶
[FIX] Docker provider - 重试 docker in docker (#17061)
修复 使用 xcom / json 时的 字符串 编码 (#13536)
如果
xcom_all
设置为False
,则只有日志的最后一行(由\n
分隔)将包含在 XCom 值中
版本 2.0.0 中的 DockerOperator
对远程 Docker Engine 或 Docker-In-Docker 情况无效。这是 #15843 的意外副作用,已在 #16932 中修复。存在一个回退模式,该模式将使 Docker Operator 在有警告的情况下工作,并且您可以使用新参数禁用文件夹挂载来消除警告。
2.0.0¶
破坏性变更¶
自动应用 apply_default decorator (#15667)
警告
由于 apply_default decorator 已被移除,此版本的 provider 需要 Airflow 2.1.0+。如果您的 Airflow 版本 < 2.1.0,并且您想安装此 provider 版本,请先将 Airflow 升级到至少 2.1.0 版本。否则,您的 Airflow 包版本将自动升级,并且您将不得不手动运行 airflow upgrade db
来完成迁移。
将 DockerOperator 的 'volumes' 参数替换为 'mounts' (#15843)
airflow.providers.docker.operators.docker.DockerOperator
和 airflow.providers.docker.operators.docker_swarm.DockerSwarmOperator
中的 volumes
参数已被 mounts
参数替换,后者使用较新的 mount syntax 而不是 --bind
。
1.2.0¶
新特性¶
在 docker operator 中 支持 Entrypoint (#14642)
将 PythonVirtualenvDecorator 添加到 Taskflow API (#14761)
在 Docker Swarm Operator 中 支持所有 terminus 任务 状态 (#14960)
1.1.0¶
新特性¶
在 DockerOperator 中 添加 privileged 选项 (#14157)
1.0.2¶
Bug 修复¶
在 发布 provider RCs 后 对 文档 和 工具 进行更正 (#14082)
1.0.1¶
更新了文档和 readme 文件。
Bug 修复¶
使用 auto_remove=True 移除失败的 DockerOperator 任务 (#13532) (#13993)
修复 auto_remove 为 True 时 DockerSwarmOperator 上的错误 (#13532) (#13852)
1.0.0¶
Provider 的初始版本。