docker - 连接错误:获取服务器 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
文件夹已经在我的本地但不知道为什么我遇到这些错误消息。
解决方案
我发现解决方案Docker
是Docker
由Ansible
. 需要在我的游戏板中添加以下命令。
---
- 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
推荐阅读
- python - 避免警报:不要使用开发服务器
- asp.net-identity - Blazor WASM 托管 - 在客户端和 API/存储库中获取 UserId
- python - 如何返回多个值,包括熊猫应用函数中的列表?
- java - java.io.FileNotFoundException: Pago Atuq.pdf(权限被拒绝)。java.io.FileOutputStream.open0
- angular - 延迟加载模块 Angular 11
- java - 双击电源按钮时,是否有任何可能的方法来构建一个 android 应用程序来拨打电话?
- delphi - 断点停止破坏代码执行 Delphi Embarcadero studio 10.2
- sql-server - SQL Server CONCAT 使用时会添加空格
- vue.js - VSCode Prettier 和 vue 混淆格式
- r - 复制r中另一列中每一行的列观察