new simpler version

This commit is contained in:
Mauro Torrez 2020-02-01 20:49:32 -03:00
parent 06c6091bb5
commit e9a70f929c
3 changed files with 38 additions and 81 deletions

View File

@ -1,13 +1,4 @@
--- ---
# adivinar nombre de release # adivinar nombre de release debian, por defecto usar buster
docker_target_release: "{{ ansible_distribution_release if \ docker_target_release: "{{ ansible_distribution_release if \
ansible_distribution_release|default('NA') != 'NA' else 'stretch' }}" ansible_distribution_release|default('NA') != 'NA' else 'buster' }}"
# nombre de la red interna de los contenedores
docker_network_name: dockernet
# nombre de la imagen base a construir
docker_base_image: eumau/debian:buster-slim
# version de confd a instalar
docker_confd_version: 0.16.0

View File

@ -1,3 +1,5 @@
--- ---
- name: restart docker - name: restart docker
service: name=docker state=restarted service:
name: docker
state: restarted

View File

@ -3,24 +3,21 @@
# A partir de instrucciones en # A partir de instrucciones en
# https://docs.docker.com/engine/installation/linux/docker-ce/debian/ # 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) - name: Instalar dependencias (python2)
when: ansible_python.version.major == 2 when: ansible_python.version.major == 2
apt: apt:
name: python-pip name:
- python-pip
- python-setuptools
state: present state: present
tags: skip_me tags: skip_me
- name: Instalar dependencias (python3) - name: Instalar dependencias (python3)
when: ansible_python.version.major == 3 when: ansible_python.version.major == 3
apt: apt:
name: python3-pip name:
- python3-pip
- python3-setuptools
state: present state: present
tags: skip_me tags: skip_me
@ -48,70 +45,37 @@
state: started state: started
enabled: yes enabled: yes
- name: Desinstalar python-docker de APT # - name: Desinstalar python-docker de APT
apt: # apt:
name: python-docker # name: python-docker
state: absent # state: absent
tags: skip_me # tags: skip_me
- name: Desinstalar python-backports.ssl-match-hostname de PIP # - name: Desinstalar python-backports.ssl-match-hostname de PIP
pip: # pip:
name: backports.ssl-match-hostname # name: backports.ssl-match-hostname
state: absent # state: absent
tags: skip_me # tags: skip_me
- name: Instalar python-backports.ssl-match-hostname con APT # - name: Instalar python-backports.ssl-match-hostname con APT
apt: # apt:
name: python-backports.ssl-match-hostname # name: python-backports.ssl-match-hostname
state: present # state: present
tags: skip_me # tags: skip_me
- name: Instalar python-docker mediante pip - name: Instalar python-docker mediante pip
pip: pip:
name: docker name:
- docker
- docker-compose
state: present state: present
- name: Configuracion de red interna # Para actualizar docker compose cambiar en la siguiente tarea los items
copy: # 'url' y 'sha256sum'. Los releases pueden encontrarse en
content: | # https://github.com/docker/compose/releases
{ "bip": "10.208.0.1/16" } - name: Instalar docker-compose
dest: /etc/docker/daemon.json get_url:
notify: restart docker url: https://github.com/docker/compose/releases/download/1.25.0/docker-compose-Linux-x86_64
sha256sum: 2bdab0bbf42583b4b77ee015cf908933c78f0572a7cb949a7dd8e200e6250221
- name: Red interna para contenedores dest: /usr/local/bin/docker-compose
docker_network: mode: +x
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 mkdir -p /start.d \
&& printf '#!/bin/bash\nset -e\n/usr/local/bin/confd -onetime -backend env\nfind /start.d -maxdepth 1 -type f -exec cmd option {} \;\nexec ${@}\n' > /entrypoint.sh \
&& mkdir -p /etc/confd/conf.d /etc/confd/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') }}"