-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstall_docker.yml
90 lines (78 loc) · 2.18 KB
/
install_docker.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
---
- hosts: all
become: yes
tasks:
- name: 'Check mandatory variables are defined'
assert:
that:
- shecan_dns_1 is defined
- shecan_dns_2 is defined
when: setup_shecan|bool
- name: Install python-apt using apt
apt:
name: python-apt
state: latest
update_cache: yes
force_apt_get: yes
- name: Install aptitude using apt
apt:
name: aptitude
state: latest
update_cache: yes
force_apt_get: yes
- name: Update apt cache
apt:
update_cache: yes
- name: Install required system packages
apt:
name: "{{ item }}"
state: latest
update_cache: no
loop:
- apt-transport-https
- ca-certificates
- curl
- software-properties-common
- python-pip
- virtualenv
- python-setuptools
- docker-compose
- python-dev
- name: Set Shecan
shell: "echo '### Shecan DNS ###\nnameserver {{ shecan_dns_1 | mandatory }}\nnameserver {{ shecan_dns_2 | mandatory }}' > /etc/resolv.conf"
when: setup_shecan|bool
- name: Add Docker GPG apt Key
apt_key:
url: https://download.docker.com/linux/ubuntu/gpg
state: present
- name: Add Docker Repository
apt_repository:
repo: deb https://download.docker.com/linux/ubuntu bionic stable
state: present
- name: Update apt and install docker-ce
apt:
update_cache: yes
name: docker-ce
state: latest
- name: Install ansible docker_compose module dependencies
pip:
name:
- docker==4.2.0
- docker-compose==1.25.5
- PyYAML==5.3.1
extra_args: --user
executable: /usr/bin/pip
- name: Add user to docker group
user:
name: "{{ ansible_user }}"
groups:
- docker
- sudo
# Ansible 'service' module didn't work after 1 week try!
- name: Restart docker manually!
shell: "systemctl daemon-reload && service docker restart"
- name: Post check
command: "{{ item }}"
loop:
- docker info
- docker-compose --version