Iniital KOReader sync role
authorLuke Hoersten <luke@hoersten.org>
Mon, 23 Mar 2026 17:04:57 -0500
changeset 247 95da94996b34
parent 246 a224ab890a8f
child 248 c3d1236b6c09
Iniital KOReader sync role
koreader-sync/defaults/main.yaml
koreader-sync/tasks/main.yaml
koreader-sync/templates/docker-compose.yml.j2
scrypted/defaults/main.yaml
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/koreader-sync/defaults/main.yaml	Mon Mar 23 17:04:57 2026 -0500
@@ -0,0 +1,6 @@
+---
+
+korsync_dir: "/opt/korsync"
+korsync_log_dir: "/var/log/korsync"
+korsync_port: "17200"
+korsync_user_registration: "true"
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/koreader-sync/tasks/main.yaml	Mon Mar 23 17:04:57 2026 -0500
@@ -0,0 +1,48 @@
+---
+
+- name: add korsync user
+  become: yes
+  user: name="korsync" shell="/bin/false" system="yes" create_home="no" groups="docker"
+
+- name: install docker apt packages
+  become: yes
+  apt: name="docker-ce"
+
+- name: make korsync dir
+  become: yes
+  file:
+    path: "{{item}}"
+    state: "directory"
+    owner: "korsync"
+    group: "korsync"
+    mode: "0755"
+  loop:
+    - "{{korsync_dir}}"
+    - "{{korsync_dir}}/data/redis"
+    - "{{korsync_log_dir}}/redis"
+    - "{{korsync_log_dir}}/app"
+
+- name: configure korsync docker compose
+  become: yes
+  template:
+    src: "docker-compose.yml.j2"
+    dest: "{{korsync_dir}}/docker-compose.yml"
+    owner: "korsync"
+    group: "korsync"
+    mode: "0600"
+
+- name: docker compose pull
+  become: yes
+  become_user: "korsync"
+  command: "docker compose pull"
+  args:
+    chdir: "{{korsync_dir}}"
+  changed_when: false
+
+- name: docker compose
+  become: yes
+  become_user: "korsync"
+  command: "docker compose up -d"
+  args:
+    chdir: "{{korsync_dir}}"
+  changed_when: false
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/koreader-sync/templates/docker-compose.yml.j2	Mon Mar 23 17:04:57 2026 -0500
@@ -0,0 +1,13 @@
+services:
+  korsync:
+    image: koreader/kosync:latest
+    container_name: korsync
+    restart: unless-stopped
+    ports:
+      - "127.0.0.1:{{korsync_port}}:17200"
+    environment:
+      - ENABLE_USER_REGISTRATION={{korsync_user_registration}}
+    volumes:
+      - {{korsync_dir}}/data/redis:/var/lib/redis
+      - {{korsync_log_dir}}/redis:/var/log/redis
+      - {{korsync_log_dir}}/app:/app/koreader-sync-server/logs
--- a/scrypted/defaults/main.yaml	Mon Mar 23 16:21:59 2026 -0500
+++ b/scrypted/defaults/main.yaml	Mon Mar 23 17:04:57 2026 -0500
@@ -1,4 +1,4 @@
 ---
 
-scrypted_dir: "~/.scrypted"
+scrypted_dir: "/opt/scrypted"
 scrypted_auto_update_port: "10444"