- Introduce Docker host configuration playbooks in `docker_host` role - Install Docker and Docker Compose via apt repository - Configure Docker user, group, and required directories (`/opt/docker`, `/media`) - Add NFS mounts for Docker data, series, movies, and songs directories - Add extra utility packages (`bat`, `ripgrep`, `fd-find`, `screen`, `eza`, `neovim`) - Set up and manage `bash_aliases` for user-friendly command replacements (`batcat`, `nvim`, `eza`) - Enhance `/group_vars` and `/host_vars` for Docker-related settings and secure access - Add `docker-host00` and `docker-host01` entries to production and staging inventories Signed-off-by: Tuan-Dat Tran <tuan-dat.tran@tudattr.dev>
110 lines
2.3 KiB
YAML
110 lines
2.3 KiB
YAML
---
|
|
- name: Create /media/docker directory
|
|
ansible.builtin.file:
|
|
path: /media/docker
|
|
state: directory
|
|
mode: "0755"
|
|
become: true
|
|
|
|
- name: Create /media/series directory
|
|
ansible.builtin.file:
|
|
path: /media/series
|
|
state: directory
|
|
mode: "0755"
|
|
become: true
|
|
|
|
- name: Create /media/movies directory
|
|
ansible.builtin.file:
|
|
path: /media/movies
|
|
state: directory
|
|
mode: "0755"
|
|
become: true
|
|
|
|
- name: Create /media/songs directory
|
|
ansible.builtin.file:
|
|
path: /media/songs
|
|
state: directory
|
|
mode: "0755"
|
|
become: true
|
|
|
|
- name: Create /opt/docker directory
|
|
ansible.builtin.file:
|
|
path: /opt/docker
|
|
state: directory
|
|
mode: "0755"
|
|
become: true
|
|
|
|
- name: Create /opt/local directory
|
|
ansible.builtin.file:
|
|
path: /opt/local
|
|
state: directory
|
|
mode: "0755"
|
|
become: true
|
|
|
|
- name: Set ownership of /opt/local to tudattr
|
|
ansible.builtin.file:
|
|
path: /opt/local
|
|
owner: tudattr
|
|
group: tudattr
|
|
become: true
|
|
|
|
- name: Set ownership of /opt/docker to tudattr
|
|
ansible.builtin.file:
|
|
path: /opt/docker
|
|
owner: tudattr
|
|
group: tudattr
|
|
become: true
|
|
|
|
- name: Set ownership of /media directories to tudattr
|
|
ansible.builtin.file:
|
|
path: /media/
|
|
owner: tudattr
|
|
group: tudattr
|
|
recurse: true
|
|
become: true
|
|
|
|
- name: Ensure /media/docker is mounted via NFS
|
|
ansible.posix.mount:
|
|
path: /media/docker
|
|
src: 192.168.20.12:/media/docker
|
|
fstype: nfs
|
|
opts: defaults,nolock
|
|
state: mounted
|
|
become: true
|
|
|
|
- name: Ensure /media/series is mounted via NFS
|
|
ansible.posix.mount:
|
|
path: /media/series
|
|
src: 192.168.20.12:/media/series
|
|
fstype: nfs
|
|
opts: defaults,nolock
|
|
state: mounted
|
|
become: true
|
|
|
|
- name: Ensure /media/movies is mounted via NFS
|
|
ansible.posix.mount:
|
|
path: /media/movies
|
|
src: 192.168.20.12:/media/movies
|
|
fstype: nfs
|
|
opts: defaults,nolock
|
|
state: mounted
|
|
become: true
|
|
|
|
- name: Ensure /media/songs is mounted via NFS
|
|
ansible.posix.mount:
|
|
path: /media/songs
|
|
src: 192.168.20.12:/media/songs
|
|
fstype: nfs
|
|
opts: defaults,nolock
|
|
state: mounted
|
|
become: true
|
|
|
|
- name: Ensure /opt/docker is mounted via NFS
|
|
ansible.posix.mount:
|
|
path: /opt/docker
|
|
src: 192.168.20.12:/opt/docker
|
|
fstype: nfs
|
|
opts: defaults,nolock
|
|
state: mounted
|
|
become: true
|