Files
provisioning/roles/dockerhost/tasks/install-xenial.yml

87 lines
1.8 KiB
YAML

---
# main tasks to install docker
- name: install packages
apt:
state: installed
package: "{{ item }}"
update_cache: yes
cache_valid_time: 3600
with_items:
- "wget"
- "apt-transport-https"
- "ca-certificates"
#- name: run docker install script
# command: "wget -qO- https://get.docker.com/ | sh"
# args:
# creates: /usr/bin/docker
#- stat:
# path: /usr/bin/docker
# register: docker
#
#- debug: var=docker
#- name: download install script
# get_url:
# url: https://get.docker.com/
# dest: /tmp/docker_install.sh
# mode: 500
# when: docker.stat.exists == false
#
#- name: run install script
# script: /tmp/docker_install.sh
# args:
# creates: /usr/bin/docker
# when: docker.stat.exists == false
- name: create docker group
group: state=present name=docker gid=999 system=yes
- name: add users to docker group
user: name={{ item }} groups=docker append=yes
with_items: "{{ dockerhost.users }}"
- name: install via apt
apt:
update_cache: true
package: "{{ item }}"
with_items:
- docker-engine
- docker-compose
- virtualbox-guest-dkms
- name: copy docker config file
copy:
src: daemon.json
dest: /etc/docker/daemon.json
- name: create mount points for shares
file:
state: directory
dest: /mnt/dkhost
# vbox shares are mounted in home folders of users with vboxsf group
#- name: add root to vboxsf group
# user: name={{ item }} groups=vboxsf append=yes
# with_items: "{{ dockerhost.users }}"
- name: setup host shares in fstab
lineinfile:
state: present
dest: /etc/fstab
insertafter: EOF
regexp: '^#?dkhost '
line: 'dkhost /mnt/dkhost vboxsf noauto 0 0'
- name: mount host shares in rc.local
lineinfile:
state: present
dest: /etc/rc.local
insertafter: 'exit 0'
regexp: '^#?mount dkhost'
line: 'mount dkhost'