commit inicial
This commit is contained in:
commit
8be1d02f9f
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
*~
|
||||||
|
\#*
|
||||||
|
.#*
|
||||||
|
*.pyc
|
||||||
|
*.bak
|
||||||
|
__pycache__
|
18
README.md
Normal file
18
README.md
Normal 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
7
defaults/main.yml
Normal 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
60
tasks/main.yml
Normal 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') }}"
|
Loading…
x
Reference in New Issue
Block a user