Explorar o código

[calibreweb] As a separate service

Colin Powell hai 6 meses
pai
achega
2d325b3244

+ 4 - 0
lab/ansible/hosts

@@ -20,6 +20,7 @@ podgrab0.local
 emus0.local
 
 calibre0.local
+calibreweb0.local
 devpi0.local
 fifttrackee0.local
 icecast0.local
@@ -140,6 +141,9 @@ weewx0.local
 [books]
 calibre0.local
 
+[library]
+calibreweb0.local
+
 [reading]
 bookwyrm0.local
 

+ 5 - 0
lab/ansible/playbook.yml

@@ -211,6 +211,11 @@
     - role: navidrome
 
 - hosts: books
+  roles:
+    - role: immortal
+    - role: calibre
+
+- hosts: library
   roles:
     - role: immortal
     - role: calibre-web

+ 5 - 2
lab/ansible/roles/caddy/files/Caddyfile

@@ -76,7 +76,7 @@ rss.lab.unbl.ink {
 music.lab.unbl.ink {
     reverse_proxy navidrome.service:4533
 }
-wx.unbl.ink {
+wx.lab.unbl.ink {
     reverse_proxy wx.service
     rewrite * /wx{uri}
 }
@@ -99,8 +99,11 @@ links.lab.unbl.ink {
 emus.lab.unbl.ink {
     reverse_proxy emus.service
 }
+calibre.lab.unbl.ink {
+    reverse_proxy calibre.service:8089
+}
 library.lab.unbl.ink {
-    reverse_proxy calibre.service:8083
+    reverse_proxy calibreweb.service:8083
 }
 ko.lab.unbl.ink {
     reverse_proxy calibre.service:8037

+ 1 - 1
lab/ansible/roles/calibre-web/files/immortal.yml

@@ -1,4 +1,4 @@
-cmd: calibre-server /media/books --port 8089
+cmd: cps -i 0.0.0.0 -l
 log:
     file: /var/log/calibre-web.log
     age: 86400 # log 1 day

+ 1 - 1
lab/ansible/roles/calibre-web/tasks/main.yml

@@ -1,7 +1,7 @@
 ---
 - name: Dependencies installed
   community.general.pkgng:
-    name: py311-pip,rust,libxslt,libxml2,calibre,py311-cryptography
+    name: py311-pip,rust,libxslt,libxml2,py311-cryptography-legacy
     state: latest
 
 - name: Calibre-Web installed

+ 7 - 0
lab/ansible/roles/calibre/files/immortal.yml

@@ -0,0 +1,7 @@
+cmd: calibre-server /media/books --port 8089
+log:
+    file: /var/log/calibre-web.log
+    age: 86400 # log 1 day
+    num: 7 # keep 7 files
+    size: 1 # size of file 1MB
+wait: 1

+ 13 - 0
lab/ansible/roles/calibre/tasks/main.yml

@@ -0,0 +1,13 @@
+---
+- name: Dependencies installed
+  community.general.pkgng:
+    name: calibre,py311-pip,rust,libxslt,libxml2,calibre,py311-cryptography-legacy,py311-sqlite3
+    state: latest
+
+- name: Calibre immortal file installed
+  copy:
+    src: immortal.yml
+    dest: /usr/local/etc/immortal/calibre.yml
+    owner: root
+    mode: 0644
+  notify: Immortal restarted

+ 1 - 0
lab/ansible/roles/unbound/files/service.zones

@@ -11,6 +11,7 @@ local-data: "rss.service        IN      A       192.168.40.146"
 local-data: "jellyfin.service   IN      A       192.168.40.185"
 local-data: "podcasts.service   IN      A       192.168.40.47"
 local-data: "calibre.service    IN      A       192.168.40.243"
+local-data: "calibreweb.service IN      A       192.168.40.48"
 local-data: "wx.service         IN      A       192.168.40.46"
 local-data: "laptop.service     IN      A       192.168.40.46"
 local-data: "kiosk.service      IN      A       192.168.40.102"

+ 1 - 1
lab/ansible/roles/unbound/files/unblink.zones

@@ -17,7 +17,6 @@ local-data: "snap.unbl.ink      IN      A       192.168.40.46"
 local-data: "s3.unbl.ink        IN      A       192.168.40.46"
 local-data: "wx.lab.unbl.ink    IN      A       192.168.40.46"
 local-data: "jelly.unbl.ink     IN      A       192.168.40.46"
-local-data: "paper.unbl.ink     IN      A       192.168.40.46"
 local-data: "notify.unbl.ink    IN      A       192.168.40.46"
 local-data: "xmpp.unbl.ink      IN      A       49.13.15.16"
 local-data: "fit.unbl.ink       IN      A       192.168.40.46"
@@ -46,5 +45,6 @@ local-data: "podcasts.lab.unbl.ink  	 IN     A       192.168.40.46"
 local-data: "console.s3.unbl.ink   	     IN     A       192.168.40.46"
 local-data: "vrobbler.lab.unbl.ink       IN     A    	192.168.40.46"
 local-data: "library.lab.unbl.ink        IN	    A   	192.168.40.46"
+local-data: "paper.lab.unbl.ink          IN	    A   	192.168.40.46"
 local-data: "change.lab.unbl.ink         IN	    A   	192.168.40.46"
 local-data: "unbl.ink	                 IN     A	    142.93.153.227"