From 2a1e7b90a91350df2f326dfe7017da6ed730f28e Mon Sep 17 00:00:00 2001 From: Fabio Sinibaldi Date: Thu, 17 Sep 2026 18:45:06 +0200 Subject: [PATCH] Intial configuration --- .../roles/vaultwarden/defaults/main.yaml | 2 ++ .../roles/vaultwarden/tasks/main.yaml | 2 ++ .../vaultwarden/tasks/vaultwarden_docker.yaml | 24 +++++++++++++++++++ .../templates/vaultwarden_compose.yaml.j2 | 19 +++++++++++++++ ansible/playbooks/vaultwarden.yaml | 15 ++++++++++++ 5 files changed, 62 insertions(+) create mode 100644 ansible/playbooks/roles/vaultwarden/defaults/main.yaml create mode 100644 ansible/playbooks/roles/vaultwarden/tasks/main.yaml create mode 100644 ansible/playbooks/roles/vaultwarden/tasks/vaultwarden_docker.yaml create mode 100644 ansible/playbooks/roles/vaultwarden/templates/vaultwarden_compose.yaml.j2 create mode 100644 ansible/playbooks/vaultwarden.yaml diff --git a/ansible/playbooks/roles/vaultwarden/defaults/main.yaml b/ansible/playbooks/roles/vaultwarden/defaults/main.yaml new file mode 100644 index 0000000..c5833b2 --- /dev/null +++ b/ansible/playbooks/roles/vaultwarden/defaults/main.yaml @@ -0,0 +1,2 @@ +vaultwarden_signup_allowed: true +vaultwarden_image_tag: 1.37.2 \ No newline at end of file diff --git a/ansible/playbooks/roles/vaultwarden/tasks/main.yaml b/ansible/playbooks/roles/vaultwarden/tasks/main.yaml new file mode 100644 index 0000000..81223be --- /dev/null +++ b/ansible/playbooks/roles/vaultwarden/tasks/main.yaml @@ -0,0 +1,2 @@ +--- +- include_tasks: vaultwarden_docker.yaml \ No newline at end of file diff --git a/ansible/playbooks/roles/vaultwarden/tasks/vaultwarden_docker.yaml b/ansible/playbooks/roles/vaultwarden/tasks/vaultwarden_docker.yaml new file mode 100644 index 0000000..e77846e --- /dev/null +++ b/ansible/playbooks/roles/vaultwarden/tasks/vaultwarden_docker.yaml @@ -0,0 +1,24 @@ +--- +- name: Create docker compose directory + ansible.builtin.file: + path: "{{ docker_compose_projects_base_path }}/vaultwarden" + state: directory + mode: '0755' + register: compose_dir + +- name: Create data directory + ansible.builtin.file: + path: "{{ compose_dir.path }}/data" + state: directory + mode: '0755' + register: vaultwarden_data_dir + +- name: Copy compose file + ansible.builtin.template: + src: templates/vaultwarden_compose.yaml.j2 + dest: "{{ compose_dir.path }}/compose.yaml" + + +- name: Starting Vaultwarden compose project + community.docker.docker_compose_v2: + project_src: "{{ compose_dir.path }}" diff --git a/ansible/playbooks/roles/vaultwarden/templates/vaultwarden_compose.yaml.j2 b/ansible/playbooks/roles/vaultwarden/templates/vaultwarden_compose.yaml.j2 new file mode 100644 index 0000000..b8964f1 --- /dev/null +++ b/ansible/playbooks/roles/vaultwarden/templates/vaultwarden_compose.yaml.j2 @@ -0,0 +1,19 @@ +networks: + newt: + name: newt_compose_default + external: true + +services: + vaultwarden: + image: vaultwarden/server:{{ vaultwarden_image_tag }} + container_name: vaultwarden + restart: always + environment: + # DOMAIN: "https://vaultwarden.example.com" # required when using a reverse proxy; your domain; vaultwarden needs to know it's https to work properly with attachments + SIGNUPS_ALLOWED: "{{ vaultwarden_signup_allowed }}" # Deactivate this with "false" after you have created your account so that no strangers can register + volumes: + - {{ vaultwarden_data_dir.path }}:/data # the path before the : can be changed + ports: + - 11001:80 # you can replace the 11001 with your preferred port + networks: + - newt \ No newline at end of file diff --git a/ansible/playbooks/vaultwarden.yaml b/ansible/playbooks/vaultwarden.yaml new file mode 100644 index 0000000..cdc2f7a --- /dev/null +++ b/ansible/playbooks/vaultwarden.yaml @@ -0,0 +1,15 @@ +--- +- name: Install Vaultwarden + hosts: vaultwarden + tasks: + - include_role: + name: geerlingguy.docker + apply: + become: true + become_exe: "{{ become_exe_value }}" + + - include_role: + name: "{{ item }}" + loop: + - newt_client + - vaultwarden \ No newline at end of file