summaryrefslogtreecommitdiff
path: root/ansible/roles/plg/tasks
diff options
context:
space:
mode:
Diffstat (limited to 'ansible/roles/plg/tasks')
-rw-r--r--ansible/roles/plg/tasks/main.yml77
1 files changed, 77 insertions, 0 deletions
diff --git a/ansible/roles/plg/tasks/main.yml b/ansible/roles/plg/tasks/main.yml
new file mode 100644
index 0000000..3078b68
--- /dev/null
+++ b/ansible/roles/plg/tasks/main.yml
@@ -0,0 +1,77 @@
+---
+
+- name: Install prerequisites
+ ansible.builtin.apt:
+ name:
+ - ca-certificates
+ - curl
+ - gnupg
+ state: present
+ update_cache: yes
+
+- name: Create apt keyrings dir
+ ansible.builtin.file:
+ path: /etc/apt/keyrings
+ state: directory
+ mode: '0755'
+
+- name: Add Docker GPG key
+ ansible.builtin.get_url:
+ url: https://download.docker.com/linux/debian/gpg
+ dest: /etc/apt/keyrings/docker.asc
+ mode: '0644'
+
+- name: Get system arch
+ ansible.builtin.command: dpkg --print-architecture
+ register: dpkg_arch
+ changed_when: false
+
+- name: Add Docker repo
+ ansible.builtin.apt_repository:
+ repo: "deb [arch={{ dpkg_arch.stdout }} signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian {{ ansible_distribution_release }} stable"
+ state: present
+ filename: docker
+
+- name: Install Docker
+ ansible.builtin.apt:
+ name:
+ - docker-ce
+ - docker-ce-cli
+ - containerd.io
+ - docker-compose-plugin
+ state: present
+ update_cache: yes
+
+- name: Start Docker service
+ ansible.builtin.systemd:
+ name: docker
+ state: started
+ enabled: yes
+
+- name: Create PLG dir
+ ansible.builtin.file:
+ path: "{{ plg_install_dir }}"
+ state: directory
+ mode: '0755'
+
+- name: Copy PLG configs
+ ansible.builtin.copy:
+ src: "{{ item }}"
+ dest: "{{ plg_install_dir }}/{{ item }}"
+ mode: '0644'
+ loop:
+ - loki-config.yaml
+ - promtail-config.yml
+
+- name: Template docker-compose
+ ansible.builtin.template:
+ src: docker-compose.yml.j2
+ dest: "{{ plg_install_dir }}/docker-compose.yml"
+ mode: '0644'
+
+- name: Start PLG containers
+ ansible.builtin.command: docker compose up -d
+ args:
+ chdir: "{{ plg_install_dir }}"
+ register: compose_output
+ changed_when: "'Started' in compose_output.stdout or 'Created' in compose_output.stdout"