88 lines
1.8 KiB
YAML

---
- name: Install Docker prerequisites
apt:
name:
- ca-certificates
- curl
state: present
update_cache: yes
- name: Create apt keyrings directory
file:
path: /etc/apt/keyrings
state: directory
mode: "0755"
- name: Download Docker GPG key
get_url:
url: https://download.docker.com/linux/debian/gpg
dest: /etc/apt/keyrings/docker.asc
mode: "0644"
- name: Add Docker apt repository
apt_repository:
repo: "deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian trixie stable"
state: present
filename: docker
- name: Install Docker CE and Compose plugin
apt:
name:
- docker-ce
- docker-ce-cli
- containerd.io
- docker-buildx-plugin
- docker-compose-plugin
state: present
update_cache: yes
- name: Enable and start Docker
systemd:
name: docker
enabled: yes
state: started
- name: Add nik to docker group
user:
name: nik
groups: docker
append: yes
- name: Create HA config directory
file:
path: /home/nik/homeassistant/config
state: directory
owner: nik
group: nik
mode: "0755"
- name: Deploy docker-compose.yaml
template:
src: docker-compose.yaml.j2
dest: /home/nik/homeassistant/docker-compose.yaml
owner: nik
group: nik
mode: "0644"
- name: Deploy systemd unit
template:
src: homeassistant.service.j2
dest: /etc/systemd/system/homeassistant.service
mode: "0644"
notify: reload systemd
- name: Deploy base configuration.yaml
template:
src: configuration.yaml.j2
dest: /home/nik/homeassistant/config/configuration.yaml
owner: nik
group: nik
mode: "0644"
force: no
- name: Enable and start homeassistant
systemd:
name: homeassistant
enabled: yes
state: started
daemon_reload: yes