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

如何使用Ansible将本地容器镜像仓库的SSL证书复制到Docker宿主机

你使用community.crypto.get_certificate模块获取到的证书返回结果中,已经包含标准PEM格式的证书内容,存放在cert.pem属性中,无需额外调用格式转换模块,直接通过Ansible内置copy模块写入目标文件即可实现需求。

完整任务示例如下:

# 前置任务:确保Docker对应镜像仓库的证书目录存在
- name: 确保Docker证书目录存在
  file:
    path: /etc/docker/certs.d/{{ registry_url }}
    state: directory
    mode: '0755'
    owner: root
    group: root
  become: yes

# 你已有的获取证书任务
- name: 从镜像仓库获取证书
  community.crypto.get_certificate:
    host: "{{ registry_url }}"
    port: "{{ registry_port }}"
  delegate_to: localhost
  become: no
  register: cert

# 写入PEM格式证书文件
- name: 写入证书到目标路径
  copy:
    content: "{{ cert.pem }}"
    dest: /etc/docker/certs.d/{{ registry_url }}/ca.crt
    mode: '0644'
    owner: root
    group: root
  become: yes

如果你的场景需要在证书文件中额外包含文本格式的证书详情(对应openssl命令中-text参数的输出),可以额外调用community.crypto.x509_certificate模块读取PEM内容生成文本说明后拼接写入即可。常规Docker私有镜像仓库的证书校验仅需要纯PEM格式内容,上述配置已完全满足需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 19:33:03