From 5cffd8b3085177f3346dba33968e8af0a27f911a Mon Sep 17 00:00:00 2001 From: Administrator Date: Thu, 16 Oct 2025 10:20:32 +0000 Subject: [PATCH] Update 4 files - /olimp-deploy.yml - /roles/bitwarden/tasks/main.yml - /roles/bitwarden/templates/docker-compose.yml.j2 - /group_vars/all.yml --- group_vars/all.yml | 20 +++++++++-- olimp-deploy.yml | 6 +--- roles/bitwarden/tasks/main.yml | 35 +++++++++++++++++++ .../bitwarden/templates/docker-compose.yml.j2 | 21 +++++++++++ 4 files changed, 75 insertions(+), 7 deletions(-) create mode 100644 roles/bitwarden/tasks/main.yml create mode 100644 roles/bitwarden/templates/docker-compose.yml.j2 diff --git a/group_vars/all.yml b/group_vars/all.yml index e492499..dcb34c3 100644 --- a/group_vars/all.yml +++ b/group_vars/all.yml @@ -44,15 +44,31 @@ bookstack_base_dir: "/mnt/bookstack" bookstack_config_dir: "/mnt/bookstack/config" bookstack_uploads_dir: "/mnt/bookstack/uploads" bookstack_db_dir: "/mnt/bookstack/db" -bookstack_port: "45131" +bookstack_port: "45133" # Mealie variables mealie_base_dir: "/mnt/mealie" mealie_data_dir: "/mnt/mealie/data" mealie_port: "45132" -mealie_db_type: "sqlite" # sqlite или postgres +mealie_db_type: "sqlite" mealie_db_password: "secure_password_123" +# Bitwarden variables +bitwarden_base_dir: "/mnt/bitwarden" +bitwarden_data_dir: "{{ bitwarden_base_dir }}/vw-data" +bitwarden_port: "45131" + +bitwarden_admin_token: "QMhEngkv2a5s5S1AOp96A7rxiwz9BTCHGORY3EHcUYEP9wy07/+HxYGimL/FQAwl" +bitwarden_websocket_enabled: true +bitwarden_signups_allowed: false +bitwarden_smtp_host: "smtp.mail.ru" +bitwarden_smtp_port: "465" +bitwarden_smtp_ssl: true +bitwarden_smtp_username: "zailon@bk.ru" +bitwarden_smtp_password: "khhyw8Ri9WrabwqM2vbC" +bitwarden_smtp_from: "zailon@bk.ru" +bitwarden_domain: "https://bw.zailon.ru" + # Media services base directories service_config_base: "/mnt/service" diff --git a/olimp-deploy.yml b/olimp-deploy.yml index 9bff553..485ce7b 100644 --- a/olimp-deploy.yml +++ b/olimp-deploy.yml @@ -3,10 +3,6 @@ roles: - {role: base_setup, tags: deploy_base } -- hosts: all - roles: - - { role: base_setup, tags: deploy_base } - - hosts: gateway roles: - { role: docker, tags: deploy_docker } @@ -18,7 +14,7 @@ - { role: docker, tags: deploy_docker } - { role: mealie, tags: deploy_mealie } - { role: bookstack, tags: deploy_bookstack } - + - { role: bitwarden, tags: deploy_bitwarden } - hosts: media roles: - { role: docker, tags: deploy_docker } diff --git a/roles/bitwarden/tasks/main.yml b/roles/bitwarden/tasks/main.yml new file mode 100644 index 0000000..45f355b --- /dev/null +++ b/roles/bitwarden/tasks/main.yml @@ -0,0 +1,35 @@ +--- +- name: Create Bitwarden directories + file: + path: "{{ item }}" + state: directory + mode: 0755 + loop: + - "{{ bitwarden_base_dir }}" + - "{{ bitwarden_data_dir }}" + +- name: Deploy Bitwarden docker-compose.yml + template: + src: docker-compose.yml.j2 + dest: "{{ bitwarden_base_dir }}/docker-compose.yml" + mode: 0644 + +- name: Start Bitwarden services + shell: | + cd {{ bitwarden_base_dir }} + docker compose up -d + args: + executable: /bin/bash + +- name: Wait for services to start + pause: + seconds: 15 + +- name: Check Bitwarden container status + shell: docker ps --filter name=vaultwarden + register: bitwarden_status + changed_when: false + +- name: Show Bitwarden status + debug: + var: bitwarden_status.stdout \ No newline at end of file diff --git a/roles/bitwarden/templates/docker-compose.yml.j2 b/roles/bitwarden/templates/docker-compose.yml.j2 new file mode 100644 index 0000000..d1e6f19 --- /dev/null +++ b/roles/bitwarden/templates/docker-compose.yml.j2 @@ -0,0 +1,21 @@ +version: '3.5' +services: + vaultwarden: + image: vaultwarden/server:latest + container_name: vaultwarden + restart: unless-stopped + ports: + - "{{ bitwarden_port }}:80" + volumes: + - "{{ bitwarden_data_dir }}:/data/" + environment: + - ADMIN_TOKEN={{ bitwarden_admin_token }} + - WEBSOCKET_ENABLED={{ bitwarden_websocket_enabled | default('true') }} + - SIGNUPS_ALLOWED={{ bitwarden_signups_allowed | default('false') }} + - SMTP_HOST={{ bitwarden_smtp_host }} + - SMTP_PORT={{ bitwarden_smtp_port }} + - SMTP_SSL={{ bitwarden_smtp_ssl | default('true') }} + - SMTP_USERNAME={{ bitwarden_smtp_username }} + - SMTP_PASSWORD={{ bitwarden_smtp_password }} + - SMTP_FROM={{ bitwarden_smtp_from }} + - DOMAIN={{ bitwarden_domain }} \ No newline at end of file