You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ansible执行Docker登录时报错:HTTPConnection.request()含意外参数'chunked'

解决Ansible docker_login任务报错:HTTPConnection.request() got an unexpected keyword argument 'chunked'

问题场景

在Ubuntu 24.04机器上执行以下Ansible任务时触发错误:

- name: Attempt a Docker login to the registry
  community.docker.docker_login:
    registry_url: "{{ docker_registry }}"
    username: "{{ ansible_hostname }}"
    password: "{{ analytics_secrets[ansible_hostname].gitlab_deploy_token }}"
    reauthorize: yes

错误信息

fatal: [example.com]: FAILED! => {"changed": false, "msg": "Error connecting: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument 'chunked'"}

服务器Docker版本

➜ docker info
Client: Docker Engine - Community
 Version:    28.2.2
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.24.0
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.36.2
    Path:     /usr/libexec/docker/cli-plugins/docker-compose

解决方案

这个错误是因为Ansible的community.docker集合版本与目标主机上的docker Python库(原docker-py)、urllib3库版本不兼容导致的——高版本docker库引入了chunked参数,但低版本urllib3不支持该参数。

可以通过以下几种方式解决:

  • 升级urllib3库
    在目标主机上执行命令升级:

    pip install --upgrade urllib3
    
  • 匹配community.docker与docker库版本

    1. 先检查当前Ansible使用的community.docker集合版本:
      ansible-galaxy collection list community.docker
      
    2. 根据集合版本安装对应兼容的docker库:
      • 若使用community.docker 3.x,建议安装docker>=6.0.0
      • 若使用community.docker 2.x,建议安装docker>=5.0.0
    3. 在目标主机上安装指定版本:
      pip install docker==6.1.3
      
  • 改用原生docker命令替代模块
    如果暂时无法调整库版本,可以直接用command模块调用系统的docker login命令:

    - name: Docker login via native command
      command: docker login {{ docker_registry }} -u {{ ansible_hostname }} -p {{ analytics_secrets[ansible_hostname].gitlab_deploy_token }}
      changed_when: false
    

内容的提问来源于stack exchange,提问作者slhck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 22:32:03