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

如何使用Ansible的docker_container模块从非安全HTTP Docker registry拉取镜像

问题解答

docker_container模块本身未提供insecure_registry参数,因为HTTP私有镜像源的信任配置属于Docker守护进程的全局规则,不属于单次容器部署任务的可调参数。你无需修改现有docker_container的配置,只需要提前在待部署容器的虚拟机节点上配置Docker的全局规则即可,有两种可选方案:

方案1:配置Docker不安全镜像源(无需证书,适合内网测试环境)

在你的Ansible剧本中,原有容器部署任务之前新增两个任务,完成目标节点的Docker配置:

  1. 写入daemon.json配置,将私有registry地址加入不安全列表
- name: 配置Docker不安全镜像源列表
  copy:
    content: |
      {
        "insecure-registries": ["你的registry的IP地址(带端口,默认5000)"]
      }
    dest: /etc/docker/daemon.json
    mode: '0644'
  1. 重启Docker服务加载新配置
- name: 重启Docker服务生效配置
  service:
    name: docker
    state: restarted
    enabled: yes

配置完成后,你原有docker_container任务无需任何修改,即可正常通过HTTP拉取私有镜像。

方案2:使用自签名证书(适合生产环境)

如果内网环境要求更高安全性,不想开启不安全镜像源配置,可以给私有registry生成自签名证书,再将根证书分发到所有需要拉取镜像的节点的/etc/docker/certs.d/你的registry地址/ca.crt路径下,配置完成后Docker会自动信任该registry的证书,同样无需修改原有docker_container任务参数即可正常拉取镜像。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 16:42:00