Ansible-03 docker安装-基于centos

news/2025/2/26 13:56:37

1.创建invertory.ini并验证连通性

  • 创建invertory.ini
[docker_servers]
192.168.0.2

  • 执行命令
ansible -i invertory.ini docker_servers -m ping

  • 结果
192.168.0.2 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}

docker_playbook_22">2.编写docker playbook

---
- name: Install Docker and configure Tsinghua mirrors
  hosts: docker_servers  # 替换为你目标主机的主机名或IP地址
  become: yes  # 使用 sudo 提权
  tasks:
    - name: Install dependencies
      yum:
        name:
          - yum-utils
          - device-mapper-persistent-data
          - lvm2
        state: present
    - name: Set Docker CE repository
      get_url:
        url: https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo
        dest: /etc/yum.repos.d/docker-ce.repo
    - name: Install Docker CE
      yum:
        name: docker-ce
        state: present
        enablerepo: docker-ce-stable
    - name: Start and enable Docker service
      service:
        name: docker
        state: started
        enabled: yes
    - name: Verify Docker installation
      command: docker --version
      register: docker_version
      changed_when: false
    - name: Print Docker version
      debug:
        var: docker_version.stdout

ansibleplay_61">3. 执行ansible-play命令

ansible-play -i invertory.ini docker_install.yml
查看直接结果,输出成功结果

PLAY [Install Docker and configure Tsinghua mirrors] **********************************************************************************************************************************************************
TASK [Gathering Facts] ****************************************************************************************************************************************************************************************

ok: [192.168.0.2]
TASK [Install dependencies] ***********************************************************************************************************************************************************************************

ok: [192.168.0.2]
TASK [Set Docker CE repository] *******************************************************************************************************************************************************************************

changed: [192.168.0.2]
TASK [Install Docker CE] **************************************************************************************************************************************************************************************
ok: [192.168.0.2]
TASK [Start and enable Docker service] ************************************************************************************************************************************************************************
changed: [192.168.0.2]
TASK [Verify Docker installation] *****************************************************************************************************************************************************************************
ok: [192.168.0.2]
TASK [Print Docker version] ***********************************************************************************************************************************************************************************
ok: [192.168.0.2] => {
    "docker_version.stdout": "Docker version 26.1.4, build 5650f9b"
}

PLAY RECAP ****************************************************************************************************************************************************************************************************

192.168.0.2                : ok=7    changed=2    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

4.安装过程中遇到的问题

  • 提示连接超时
PLAY [Install Docker and configure Tsinghua mirrors] *****************************************************************************************
TASK [Gathering Facts] ***********************************************************************************************************************
ok: [192.168.0.2]
TASK [Install dependencies] ******************************************************************************************************************

fatal: [192.168.0.2]: FAILED! => {"changed": false, "msg": "Failure talking to yum: failure: repodata/repomd.xml from AppStream: [Errno 256] No more mirrors to try.\nhttp://mirrors.aliyun.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 14] HTTP Error 404 - Not Found\nhttp://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')\nhttp://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30002 milliseconds')\nhttp://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')\nhttp://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')\nhttp://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30002 milliseconds')\nhttp://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')\nhttp://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.cloud.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')\nhttp://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: [Errno 12] Timeout on http://mirrors.aliyuncs.com/centos/7/AppStream/x86_64/os/repodata/repomd.xml: (28, 'Connection timed out after 30001 milliseconds')"}
PLAY RECAP ***********************************************************************************************************************************

192.168.0.2                : ok=1    changed=0    unreachable=0    failed=1    skipped=0    rescued=0    ignored=0

问题原因:
报错中地址为http,可能已经失效,替换为https 或者删除现在的源
排查步骤:

  • 查看现在已启用的源
    yum repolist enabled 发现有个docker源已启用
已加载插件:fastestmirror Loading mirror speeds from cached hostfile 源标识 源名称 状态 !docker-ce-stable/7/x86_64 Docker CE Stable - x86_64 337 repolist: 337
  • 查询位置
    grep -rli "http://mirrors.aliyuncs" /etc/yum.repos.d/
  • 删除这源(这里我是整个文件删除了)
    rm -rf docker-ce.repo
    刷新缓存
    sudo yum clean all && yum makecache
  • 重新执行ansible部署命令
    ansible-play -i invertory.ini docker_install.yml

http://www.niftyadmin.cn/n/5868801.html

相关文章

OpenCV(9):视频处理

1 介绍 视频是由一系列连续的图像帧组成的,每一帧都是一幅静态图像。视频处理的核心就是对这些图像帧进行处理。常见的视频处理任务包括视频读取、视频播放、视频保存、视频帧处理等。 视频分析: 通过视频处理技术,可以分析视频中的运动、目标、事件等。…

中文版【推荐】Topaz Gigapixel AI 5.6.1 WIN中文版 资源分享

Topaz AI Gigapixel是一款来自Topaz Labs公司的无损图片放大工具,软件采用了AI深度学习技术,可以帮助用户实现图片的“无损”放大功能,让低分辨率图片转为高分辨率、高质量图片,使用人工智能(AI)来填补那些…

支持向量机(SVM)简介与应用

目录 1. 什么是支持向量机? 2. SVM的基本原理 3. 核函数与SVM的扩展 4. SVM的优势与挑战 5. SVM的应用场景 6. 总结 1. 什么是支持向量机? 支持向量机(Support Vector Machine,简称SVM)是一种监督学习模型&#…

VUE 获取视频时长,无需修改数据库,前提当前查看视频可以得到时长

第一字段处 <el-table-column label"视频时长" align"center"> <template slot-scope"scope"> <span>{{ formatDuration(scope.row.duration) }}</span> </template> </el-ta…

编写一个程序,输入一个字符串并输出其长度(Python版)

编写一个程序&#xff0c;输入一个字符串并输出其长度 以下是Python实现代码: s input("请输入一个字符串&#xff1a;") print("字符串的长度是&#xff1a;", len(s))运行效果&#xff1a; 1.程序会等待用户输入&#xff08;如输入"Hello"&…

Vue+ElementPlus的一些问题修复汇总

目录 一、ElementPlusVue-router做侧边栏问题 二、 组件样式问题 2.1修改文字颜色、大小、粗细、边框的颜色 2.2修改聚焦后文字的颜色、边框的颜色 2.3修改鼠标悬浮时文字的颜色、边框的颜色 三、 组件样式问题 3.1修改文字颜色、大小、粗细 四、 样式问题 4.1当数据为空…

【数据结构】(Python)第六章:图

数据结构&#xff08;Python&#xff09;第六章&#xff1a;图 文章目录 数据结构&#xff08;Python&#xff09;第六章&#xff1a;图6.1 图的定义和基本概念6.2 图的存储结构6.2.1 邻接矩阵&#xff08;Adjacency Matrix&#xff09;6.2.2 邻接表&#xff08;Adjacency List…

特辣的海藻!4

目录 基础知识点 数对结构 BigInteger split() 题 1.商品库存管理 - 蓝桥云课 2.回文字符串 - 蓝桥云课 3.握手问题 - 蓝桥云课 基础知识点 数对结构 Java中类似C大的pair&#xff0c;自定义 public class Pair<A, B> {private final A first;private final B …