【问题标题】:Error connecting: Error while fetching server API version: Ansible连接错误:获取服务器 API 版本时出错:Ansible
【发布时间】:2019-05-20 15:13:18
【问题描述】:

我是 Ansible 的新手。我运行了以下 ansible PlayBook 并发现了这些错误:

---
- hosts: webservers
  remote_user: linx
  become: yes
  become_method: sudo
  tasks:

    - name: install docker-py
      pip: name=docker-py

    - name: Build Docker image from Dockerfile
      docker_image:
        name: web
        path: docker
        state: build

    - name: Running the container
      docker_container:
        image: web:latest
        path: docker
        state: running

    - name: Check if container is running
      shell: docker ps

错误信息:

失败了! => {"changed": false, "msg": "错误连接:错误同时 获取服务器 API 版本:('连接中止。',错误(2,'没有这样 文件或目录'))"}

这是我的文件夹结构:

.
├── ansible.cfg
├── docker
│   └── Dockerfile
├── hosts
├── main.retry
├── main.yml

我很困惑 docker 文件夹已经在我的本地文件夹中,但不知道为什么会遇到这些错误消息。

【问题讨论】:

  • 我猜“没有这样的文件或目录”是因为 docker unix sock 不在 /var/run/docker.sock 它传统上的位置。您是否尝试过增加日志详细程度以获取更多详细信息? ansible-playbook -vvvv
  • 我发现docker服务安装后还没有启动。
  • @mdaniel @PPShein 我如何理解`错误 - 获取服务器 API 版本时出错:('连接中止。',ConnectionRefusedError(111,'连接被拒绝'))`;引用的这个服务器 api 版本是什么?

标签: docker amazon-ec2 ansible


【解决方案1】:

我发现解决方案是在DockerAnsible 安装后,Docker 守护程序不工作。需要在我的游戏板中添加以下命令。

---
- hosts: webservers
  remote_user: ec2-user
  become: yes
  become_method: sudo
  tasks:
    - name: install docker
      yum: name=docker

    **- name: Ensure service is enabled
      command: service docker restart***

    - name: copying file to remote
      copy:
        src: ./docker
        dest: /home/ec2-user/docker
    - name: Build Docker image from Dockerfile
      docker_image:
        name: web
        path: /home/ec2-user/docker
        state: build
    - name: Running the container
      docker_container:
        image: web:latest
        name: web
    - name: Check if container is running
      shell: docker ps

【讨论】:

  • 您需要使用service: name=docker state=started 来防止剧本不断地弹跳docker daemon
  • @MatthewLDaniel 感激不尽。
  • @PPShein 你是怎么发现守护进程不工作的?
  • @DJ_Stuffy_K 安装后需要启动。
  • 我遇到了类似的问题,但我没有将用户帐户添加到 docker 组。
猜你喜欢
  • 2021-03-05
  • 2023-02-05
  • 2021-02-16
  • 1970-01-01
  • 2022-07-21
  • 2020-07-11
  • 1970-01-01
  • 1970-01-01
  • 2013-04-04
相关资源
最近更新 更多