首页 > 解决方案 > 连接错误:获取服务器 API 版本时出错:Ansible

问题描述

我是 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": "Error connected: Error while fetching server API version: ('Connection aborted.', error(2, 'No such file or directory'))"}

这是我的文件夹结构:

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

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

标签: dockeramazon-ec2ansible

解决方案


我发现解决方案DockerDockerAnsible. 需要在我的游戏板中添加以下命令。

---
- 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

推荐阅读