Add calibre-web service

This commit is contained in:
Tobias Reisinger 2025-12-20 18:05:13 +01:00
parent 8afa6f5c7a
commit bf2908f42a
Signed by: serguzim
GPG key ID: 13AD60C237A28DFE
5 changed files with 67 additions and 0 deletions

View file

@ -0,0 +1,23 @@
---
calibre_web_svc:
domain: "{{ all_services | service_get_domain(role_name) }}"
port: 8083
caddy_proxy_extra: |
header_up X-Scheme https
calibre_web_env:
PUID: 1000
PGID: 1000
TZ: "{{ timezone }}"
calibre_web_compose:
watchtower: update
image: lscr.io/linuxserver/calibre-web:latest
volumes:
- config:/config
- calibre_web_data:/data
file:
volumes:
config:
calibre_web_data:
external: true

View file

@ -0,0 +1,3 @@
---
- name: Restart service {{ role_name }}
ansible.builtin.include_tasks: tasks/restart-service.yml

View file

@ -0,0 +1,17 @@
---
- name: Set common facts
ansible.builtin.import_tasks: tasks/set-default-facts.yml
- name: Deploy {{ role_name }}
vars:
svc: "{{ calibre_web_svc }}"
env: "{{ calibre_web_env }}"
compose: "{{ calibre_web_compose }}"
block:
- name: Import tasks to create docker rclone volume
ansible.builtin.import_tasks: tasks/create-docker-rclone-volume.yml
vars:
task_volume: calibre_web_data
task_rclone: "{{ opentofu.hcloud_storage_box_accounts.calibre_web }}"
- name: Import tasks to deploy common service
ansible.builtin.import_tasks: tasks/deploy-common-service.yml

View file

@ -9,6 +9,7 @@ import hcl2
icon_overrides = { icon_overrides = {
"acme_dns": "lets-encrypt", "acme_dns": "lets-encrypt",
"backup": "restic", "backup": "restic",
"calibre_web": "calibre-web",
"deploy": "adnanh-webhook", "deploy": "adnanh-webhook",
"dmarc_report": None, "dmarc_report": None,
"extra_services": None, "extra_services": None,

View file

@ -81,6 +81,29 @@ services = {
database = false database = false
}, },
"calibre_web" = {
host = "node001"
dns = [{
domain = "books.serguzim.me"
}]
backup = [
{
name = "calibre_web_config"
type = "docker"
},
{
name = "calibre_web_data"
type = "hook"
}
]
monitoring = {
group = "3-services"
}
auth = false
database = false
storage_box = true
}
"deploy" = { "deploy" = {
host = "node001" host = "node001"
dns = [ dns = [