2019-09-09 21:15:23 -03:00

117 lines
3.0 KiB
YAML

---
# Rol para instalación de Docker
# A partir de instrucciones en
# https://docs.docker.com/engine/installation/linux/docker-ce/debian/
- name: Instalar pre-dependencias
when: docker_target_release == 'stretch'
apt:
name: apt-transport-https
state: present
tags: skip_me
- name: Instalar dependencias (python2)
when: ansible_python.version.major == 2
apt:
name: python-pip
state: present
tags: skip_me
- name: Instalar dependencias (python3)
when: ansible_python.version.major == 3
apt:
name: python3-pip
state: present
tags: skip_me
- name: Clave repositorio APT de Docker
apt_key:
url: https://download.docker.com/linux/debian/gpg
state: present
tags: skip_me
- name: Configurar repo APT de Docker
apt_repository:
repo: deb https://download.docker.com/linux/debian {{ docker_target_release }} stable
state: present
tags: skip_me
- name: Instalar docker
apt:
name: docker-ce
state: present
tags: skip_me
- name: Habilitar containerd
service:
name: containerd
state: started
enabled: yes
- name: Desinstalar python-docker de APT
apt:
name: python-docker
state: absent
tags: skip_me
- name: Desinstalar python-backports.ssl-match-hostname de PIP
pip:
name: backports.ssl-match-hostname
state: absent
tags: skip_me
- name: Instalar python-backports.ssl-match-hostname con APT
apt:
name: python-backports.ssl-match-hostname
state: present
tags: skip_me
- name: Instalar python-docker mediante pip
pip:
name: docker
state: present
- name: Configuracion de red interna
copy:
content: |
{ "bip": "10.208.0.1/16" }
dest: /etc/docker/daemon.json
notify: restart docker
- name: Red interna para contenedores
docker_network:
name: "{{ docker_network_name }}"
state: present
- name: Directorio de build {{ docker_base_image }}
file:
path: /root/.buster-slim-docker-image
state: directory
tags: skip_me
- name: Copiar archivos de build
copy:
content: |
FROM debian:buster-slim
ARG CONFD_VERSION={{ docker_confd_version }}
ADD https://github.com/kelseyhightower/confd/releases/download/v${CONFD_VERSION}/confd-${CONFD_VERSION}-linux-amd64 /usr/local/bin/confd
RUN printf '#!/bin/bash\n/usr/local/bin/confd -onetime -backend env\nexec ${@}' > /entrypoint.sh \
&& mkdir -p /etc/confd/{conf.d,templates} \
&& chmod +x /usr/local/bin/confd /entrypoint.sh
ENTRYPOINT ["/entrypoint.sh"]
dest: /root/.buster-slim-docker-image/Dockerfile
tags: skip_me
- name: Crear imagen {{ docker_base_image }}
docker_image:
state: present
name: "{{ docker_base_image }}"
path: /root/.buster-slim-docker-image
tags: skip_me
- name: Exportar variables para otros roles
set_fact:
docker_network: "{{ lookup('vars', 'docker_network_name') }}"
docker_network_name: "{{ lookup('vars', 'docker_network_name') }}"
docker_base_image: "{{ lookup('vars', 'docker_base_image') }}"