commit inicial

This commit is contained in:
Mauro Torrez 2019-03-01 11:00:08 -03:00
commit 8be1d02f9f
4 changed files with 91 additions and 0 deletions

6
.gitignore vendored Normal file
View File

@ -0,0 +1,6 @@
*~
\#*
.#*
*.pyc
*.bak
__pycache__

18
README.md Normal file
View File

@ -0,0 +1,18 @@
# Rol docker
Este rol instala Docker en hosts Debian. Además, configura una red
interna a la que se pueden conectar los contenedores.
## Variables
* `docker_target_release`: Nombre del release Debian.
Valor por defecto: distribución actual del host; si no se puede
determinar, se utiliza el valor `stretch`.
* `docker_network_name`: Nombre de la red interna a crear.
Valor por defecto: `dockernet`.
## Variables exportadas
El rol exporta la variable `docker_network_name`, que puede ser
utilizada en los roles sucesivos.

7
defaults/main.yml Normal file
View File

@ -0,0 +1,7 @@
---
# adivinar nombre de release
docker_target_release: "{{ ansible_distribution_release if \
ansible_distribution_release|default('NA') != 'NA' else 'stretch' }}"
# nombre de la red interna de los contenedores
docker_network_name: "dockernet"

60
tasks/main.yml Normal file
View File

@ -0,0 +1,60 @@
---
# Rol para instalación de Docker
# A partir de instrucciones en
# https://docs.docker.com/engine/installation/linux/docker-ce/debian/
- name: "Instalar dependencias"
apt:
name: "python-pip"
state: "present"
- name: "Clave repositorio APT de Docker"
apt_key:
url: "https://download.docker.com/linux/debian/gpg"
state: "present"
- name: "Configurar repo APT de Docker"
apt_repository:
repo: "deb https://download.docker.com/linux/debian \
{{ docker_target_release }} stable"
state: "present"
- name: "Instalar docker"
apt:
name: "docker-ce"
state: "present"
- name: "Habilitar containerd"
service:
name: "containerd"
state: "started"
enabled: yes
- name: "Desinstalar python-docker de APT"
apt:
name: "python-docker"
state: "absent"
- name: "Desinstalar python-backports.ssl-match-hostname de PIP"
pip:
name: "backports.ssl-match-hostname"
state: "absent"
- name: "Instalar python-backports.ssl-match-hostname con APT"
apt:
name: "python-backports.ssl-match-hostname"
state: "present"
- name: "Instalar python-docker mediante pip"
pip:
name: "docker"
state: "present"
- name: "Red interna para contenedores"
docker_network:
name: "{{ docker_network_name }}"
state: "present"
- name: "Exportar variables para otros roles"
set_fact:
docker_network_name: "{{ lookup('vars', 'docker_network_name') }}"