commit
f7bbaf5ad4
@ -1,19 +1,15 @@
|
||||
---
|
||||
dockerpy: no
|
||||
|
||||
docker_proxy: no
|
||||
docker_http_proxy: ""
|
||||
docker_https_proxy: ""
|
||||
docker_no_proxy: ""
|
||||
docker_upgrade: false
|
||||
docker_default_config:
|
||||
storage-driver: devicemapper
|
||||
log-level: info
|
||||
|
||||
docker_version: "17.06"
|
||||
docker_setup_script_url: "https://releases.rancher.com/install-docker/{{ docker_version }}.sh"
|
||||
#docker_version: "latest"
|
||||
#docker_upgrade: false
|
||||
|
||||
# DANGER! THIS VALUE IS USED TO VERIFY THAT THE DOCKER SETUP SCRIPT IS LEGITIMATE.
|
||||
# DO NOT MODIFY THIS UNLESS YOU HAVE SPECIFIED A DIFFERENT "docker_version" or "setup_script_url"
|
||||
# IF YOU HAVE GENERATED AN MD5 CHECKSUM FOR YOUR DESIRED SETUP SCRIPT, STORE IT IN THIS VARIABLE
|
||||
# IF YOU REALLY DON'T WANT TO VERIFY CHECKSUM, SET THIS VALUE TO "false" or "no"
|
||||
docker_setup_script_md5_sum: "6be324016277879d49bd0e7f9f91e546"
|
||||
docker_default_config:
|
||||
storage-driver: devicemapper
|
||||
log-level: info
|
||||
|
@ -1,6 +0,0 @@
|
||||
[dockerrepo]
|
||||
name=Docker Repository
|
||||
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
gpgkey=https://yum.dockerproject.org/gpg
|
@ -1 +0,0 @@
|
||||
deb https://apt.dockerproject.org/repo ubuntu-xenial main
|
@ -1 +0,0 @@
|
||||
deb https://apt.dockerproject.org/repo ubuntu-zesty main
|
@ -0,0 +1,36 @@
|
||||
---
|
||||
- name: ensure needed directories are present
|
||||
file:
|
||||
path: "{{ item }}"
|
||||
state: directory
|
||||
with_items:
|
||||
- /etc/docker
|
||||
- /etc/systemd/system
|
||||
|
||||
- name: ensure daemon config file is present
|
||||
copy:
|
||||
content: |
|
||||
{{ docker_json | to_nice_json(indent=2) }}
|
||||
dest: /etc/docker/daemon.json
|
||||
notify: restart docker
|
||||
|
||||
- name: create directory for proxy file
|
||||
file:
|
||||
path: /etc/systemd/system/docker.service.d
|
||||
state: directory
|
||||
when: docker_proxy
|
||||
|
||||
- name: create http-proxy.conf
|
||||
copy:
|
||||
content: |
|
||||
[Service]
|
||||
Environment="HTTP_PROXY={{ docker_http_proxy }}" "HTTPS_PROXY={{ docker_https_proxy }}" "NO_PROXY={{ docker_no_proxy }}"
|
||||
dest: /etc/systemd/system/docker.service.d/http-proxy.conf
|
||||
notify: restart docker
|
||||
when: docker_proxy
|
||||
|
||||
- name: ensure unit file is present & up to date
|
||||
template:
|
||||
src: docker.j2.service
|
||||
dest: /etc/systemd/system/docker.service
|
||||
notify: restart docker
|
@ -1,17 +1,57 @@
|
||||
---
|
||||
- name: Compose md5 checksum
|
||||
set_fact:
|
||||
__docker_setup_script_checksum: "md5:{{ docker_setup_script_md5_sum }}"
|
||||
when: docker_setup_script_md5_sum != ""
|
||||
- name: install system dependencies
|
||||
package:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
register: __ret
|
||||
retries: 5
|
||||
until: __ret is succeeded
|
||||
with_items: "{{ docker_dependencies }}"
|
||||
|
||||
- name: Download docker setup script for desired version
|
||||
get_url:
|
||||
url: "{{ docker_setup_script_url }}"
|
||||
dest: "/tmp/docker-setup.sh"
|
||||
checksum: "{{ __docker_setup_script_checksum|default(omit) }}"
|
||||
mode: 0755
|
||||
- name: remove old versions
|
||||
package:
|
||||
name: "{{ item }}"
|
||||
state: absent
|
||||
with_items:
|
||||
- lxc-docker
|
||||
- docker-engine
|
||||
- docker
|
||||
- docker.io
|
||||
|
||||
- name: Execute docker setup script
|
||||
shell: "/tmp/docker-setup.sh"
|
||||
tags:
|
||||
- skip_ansible_lint
|
||||
- block:
|
||||
- name: add GPG key
|
||||
apt_key:
|
||||
url: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg"
|
||||
state: present
|
||||
|
||||
- name: add docker repository | Debian
|
||||
apt_repository:
|
||||
repo: "deb [arch=amd64] https://download.docker.com/linux/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} stable"
|
||||
state: present
|
||||
when: ansible_os_family == "Debian"
|
||||
|
||||
- name: add docker repository | RedHat
|
||||
yum_repository:
|
||||
name: docker-ce-stable
|
||||
description: "Docker CE Stable - $basearch"
|
||||
baseurl: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/$releasever/$basearch/stable"
|
||||
gpgcheck: true
|
||||
gpgkey: "https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg"
|
||||
when: ansible_os_family == "RedHat" and ansible_distribution != "OracleLinux"
|
||||
|
||||
- name: Install docker
|
||||
package:
|
||||
name: "{{ docker_package }}"
|
||||
state: "{{ (docker_version == 'latest') | ternary('latest', 'present') }}"
|
||||
update_cache: yes
|
||||
register: __ret
|
||||
retries: 10
|
||||
until: __ret is succeeded
|
||||
notify:
|
||||
- restart docker
|
||||
|
||||
- name: ensure docker-py module is installed
|
||||
pip:
|
||||
name: docker-py
|
||||
version: 1.9.0
|
||||
when: dockerpy
|
||||
|
@ -1,24 +1,14 @@
|
||||
---
|
||||
- name: Set backwards compatibility for docker_upgrade var
|
||||
set_fact:
|
||||
docker_upgrade: "{{ upgrade_docker }}"
|
||||
when: upgrade_docker is defined
|
||||
docker_version: latest
|
||||
when: upgrade_docker is defined or docker_upgrade is defined
|
||||
|
||||
- name: Set backwards compatibility for default_config
|
||||
set_fact:
|
||||
docker_default_config: "{{ default_docker_config }}"
|
||||
when: default_docker_config is defined
|
||||
|
||||
- name: Set backwards compatibility for setup_script_md5_sum
|
||||
set_fact:
|
||||
docker_setup_script_md5_sum: "{{ setup_script_md5_sum }}"
|
||||
when: setup_script_md5_sum is defined
|
||||
|
||||
- name: Set backwards compatibility for setup_script_url
|
||||
set_fact:
|
||||
docker_setup_script_url: "{{ setup_script_url }}"
|
||||
when: setup_script_url is defined
|
||||
|
||||
- name: apply default daemon config
|
||||
set_fact:
|
||||
docker_json: "{{ docker_default_config | combine(docker_config | default({})) }}"
|
||||
|
@ -1 +0,0 @@
|
||||
{{ docker_json | to_nice_json(indent=2) }}
|
@ -1,2 +0,0 @@
|
||||
[Service]
|
||||
Environment="HTTP_PROXY={{ docker_http_proxy }}" "HTTPS_PROXY={{ docker_https_proxy }}" "NO_PROXY={{ docker_no_proxy }}"
|
@ -1,3 +1,6 @@
|
||||
docker_package: "docker-ce{{ (docker_version != 'latest') | ternary('=' ~ docker_version, '') }}"
|
||||
docker_dependencies:
|
||||
- apt-transport-https
|
||||
- ca-certificates
|
||||
- software-properties-common
|
||||
- python-pip
|
||||
|
@ -1,3 +1,7 @@
|
||||
grafana_package: "docker-ce{{ (docker_version != 'latest') | ternary('-' ~ docker_version, '') }}"
|
||||
docker_dependencies:
|
||||
- ca-certificates
|
||||
- yum-utils
|
||||
- epel-release
|
||||
- e2fsprogs
|
||||
- python2-pip
|
||||
|
Loading…
Reference in new issue