通过 Ansible 安装 Docker
本文的演示环境为 ubuntu 16.04。
先在 Ansible Galaxy 搜索 docker,由 geerlingguy 贡献的 docker role 是目前最受欢迎的:
通过 ansible-galaxy 命令可以把上面搜索到的 role 安装到本地:
$ ansible-galaxy install geerlingguy.docker
了解 docker role 的基本配置
我们安装的 geerlingguy.docker role 的主要配置文件为:~/.ansible/roles/geerlingguy.docker/defaults/main.yml。下面介绍一下其中的一些比较重要的配置项。
# Edition can be one of: 'ce' (Community Edition) or 'ee' (Enterprise Edition).
docker_edition: 'ce'
docker_package: "docker-{{ docker_edition }}"
docker_edition 变量用来指定 docker 的版本,ce 代表社区版,ee 代表企业版。
docker_package_state: present
通过设置 docker_package_state 变量为 present、missing 或 latest,可以是安装 docker 还是卸载 docker 已经安装 docker 的最新版本。
docker_service_state: started
docker_service_enabled: true
docker_restart_handler_state: restarted
docker_service_state 控制 docker daemon 的状态,docker_service_enabled 控制在启动主机时是否启动 docker daemon。
docker_install_compose: true
docker_compose_version: "1.22.0"
docker_compose_path: /usr/local/bin/docker-compose
安装 docker-compose。
docker_apt_release_channel: stable
docker_apt_arch: amd64
docker_apt_repository: "deb [arch={{ docker_apt_arch }}] https://download.docker.com/linux/{{ ansible_distribution|lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}"
docker_apt_ignore_key_error: True
对于 Ubuntu 来说,可以选择处理器架构以及稳定版的 docker。
安装 docker
创建 playbook 文件 pb_docker.yml,其中引用已经安装好的 role 来完成 docker 的安装:
---
- hosts: dockerhost
vars:
docker_users:
- nick
roles:
- role: geerlingguy.docker
become: yes
我们同时设置了变量 docker_users,把用户 nick 添加到 docker 组。注意,请在 /etc/ansible/hosts 文件中添加名称为 dockerhost 的组。然后执行下面的命令就可以了:
$ ansible-playbook -u nick pb_docker.yml
检查安装结果
使用下面的命令检查安装的 docker 版本:
$ docker version
下面的命令可以查看 docker-compose 的版本:
$ docker-compose -v
顺便看一下是不是把用户 nick 加入了 docker 组:
通过 Ansible 安装 Docker的更多相关文章
- 使用ansible安装docker以及docker-compose
转自:https://www.cnblogs.com/jsonhc/p/7879028.html 环境三台centos7主机: master:192.168.101.14,node1:192.168. ...
- (playbook)ubuntu下ansible安装docker
--- - hosts: test sudo: yes vars: apt_packages_ca: - apt-transport-https - ca-certificates tasks: - ...
- ansible安装二进制kubernetes-1.14.1
主机信息: 主机IP 主机名 角色 10.10.3.181 k8s-m1 kube-apiserver,kube-controller-manager,kube-scheduler,etcd 10. ...
- Ansible安装部署以及常用模块详解
一. Ansible 介绍Ansible是一个配置管理系统configuration management system, python 语言是运维人员必须会的语言, ansible 是一个基于py ...
- 二进制安装 kubernetes 1.12(二) - 安装docker, 部署Flannel网络
在 node 节点上安装 docker 参考 https://www.cnblogs.com/klvchen/p/8468855.html Flannel 工作原理: 部署Flannel网络 在 ma ...
- ansible安装及使用
一.ansible介绍 1.ansible简介 官方的title是“Ansible is Simple IT Automation”——简单的自动化IT工具. Ansible跟其他IT自动化技术的区别 ...
- CentOSLinux安装Docker容器
Docker 使用 环境说明 CentOS 7.3(不准确地说:要求必须是 CentOS 7 64位) 不建议在 Windows 上使用 Docker 基本概念 官网:https://www.dock ...
- 从0到1使用Kubernetes系列(三):使用Ansible安装Kubernetes集群
前两期的文章介绍了Kubernetes基本概念和架构,用Kubeadm+Ansible搭建Kubernetes集群所需要的工具及其作用.本篇介绍怎么使用Ansible安装Kubernetes集群. 启 ...
- k8s之ansible安装
项目地址:https://github.com/easzlab/kubeasz #:先配置harbor #:利用脚本安装docker root@k8s-harbor1:~# vim docker_in ...
随机推荐
- 2018 Multi-University Training Contest 3 - HDU Contest
题解: solution Code: A. Ascending Rating #include<cstdio> const int N=10000010; int T,n,m,k,P,Q, ...
- idea在springboot项目中没有【新建JSP选项】的解决方法
https://blog.csdn.net/qq_26525215/article/details/53726690 转载于CSDN
- 显存充足,但是却出现CUDA error:out of memory错误
之前一开始以为是cuda和cudnn安装错误导致的,所以重装了,但是后来发现重装也出错了. 后来重装后的用了一会也出现了问题.确定其实是Tensorflow和pytorch冲突导致的,因为我发现当我同 ...
- 接口自动化集成到jenkins(Java+testng+maven+git)
一jenkins启动命令:jenkins 查看端口号: 1.lsof -i:端口号 2.netstat -tunlp|grep 端口号 二: 登录:http://localhost:8080 输入:u ...
- vs2017 调试时 浏览器关闭不想中断调试
解决方案 工具—>选项—>项目和解决方案—>web项目-->去点“浏览器窗口关闭时停止调试”前面的勾去掉>>>
- webapi 知识点
在web api 中后台的方法必须 加入 [HttpGet] ,[HttpPost],[HttpPut],[HttpDelete] 来区分,这是一种习惯. ps: get 方式参数都存在http协议头 ...
- RabbitMQ CLI 管理工具 rabbitmqadmin(管理和监控)
插个广告,公司最近在招".NET"开发(杭州),如果你现在还从事 .NET 开发(想用 .NET Core,但被公司不认可),想转 JAVA 开发(但又没有工作经验,惧怕面试),想 ...
- 安卓开发学习笔记(三):Android Stuidio无法引用Intent来创建对象,出现cannot resolve xxx
笔者在进行安卓开发时,发现自己的代码语法完全没有问题.尤其是创建intent对象的时候,语法完全是正确的,但是Android Stuidio却显示报错,Intent类显示为红色,如图所示: 代码如下所 ...
- 【RL-TCPnet网络教程】第6章 RL-TCPnet底层驱动说明
第6章 RL-TCPnet底层驱动说明 本章节为大家讲解RL-TCPnet的底层驱动,主要是STM32自带MAC的驱动实现和PHY的驱动实现. 6.1 初学者重要提示 6.2 KEI ...
- GT-随身调详细教程
一.GT介绍 GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment).利用GT,仅凭一部手机,无需连接电脑 ...