Update 5 files
- /group_vars/all.yml - /inventories/hosts - /roles/calibre-web/tasks/main.yml - /roles/calibre-web/templates/docker-compose.yml.j2 - /olimp-deploy.yml
This commit is contained in:
parent
7774d716b5
commit
00b8f43e8f
@ -91,12 +91,6 @@ audiobookshelf_config_dir: "{{ audiobookshelf_base_dir }}/config"
|
|||||||
audiobookshelf_db_dir: "{{ audiobookshelf_base_dir }}/db"
|
audiobookshelf_db_dir: "{{ audiobookshelf_base_dir }}/db"
|
||||||
audiobookshelf_port: "45132"
|
audiobookshelf_port: "45132"
|
||||||
|
|
||||||
# Calibre-Web
|
|
||||||
calibre_web_base_dir: "{{ service_config_base }}/calibre-web"
|
|
||||||
calibre_web_config_dir: "{{ calibre_web_base_dir }}/config"
|
|
||||||
calibre_web_db_dir: "{{ calibre_web_base_dir }}/db"
|
|
||||||
calibre_web_port: "45133"
|
|
||||||
|
|
||||||
# Ampache
|
# Ampache
|
||||||
ampache_base_dir: "{{ service_config_base }}/ampache"
|
ampache_base_dir: "{{ service_config_base }}/ampache"
|
||||||
ampache_config_dir: "{{ ampache_base_dir }}/config"
|
ampache_config_dir: "{{ ampache_base_dir }}/config"
|
||||||
@ -104,16 +98,20 @@ ampache_logs_dir: "{{ ampache_base_dir }}/logs"
|
|||||||
ampache_mysql_dir: "{{ ampache_base_dir }}/mysql"
|
ampache_mysql_dir: "{{ ampache_base_dir }}/mysql"
|
||||||
ampache_port: "45134"
|
ampache_port: "45134"
|
||||||
|
|
||||||
# ------------192.168.1.206 talk------------
|
# Calibre
|
||||||
|
calibre_base_dir: "{{ service_config_base }}/calibre"
|
||||||
# Mumble
|
calibre_library_dir: "/mnt/books"
|
||||||
mumble_base_dir: "/mnt/mumble"
|
calibre_config_dir: "{{ calibre_base_dir }}/config"
|
||||||
mumble_data_dir: "{{ mumble_base_dir }}/data"
|
calibre_web_port: "45133"
|
||||||
mumble_port: "45131"
|
calibre_server_port: "45136"
|
||||||
mumble_ice_port: "6502"
|
calibre_web_db_path: "{{ calibre_config_dir }}/app.db"
|
||||||
mumble_server_password: "passw0rd"
|
calibre_web_enable_uploading: true
|
||||||
mumble_superuser_password: "13qeadZC"
|
calibre_web_enable_conversion: true
|
||||||
mumble_max_users: "100"
|
calibre_web_enable_registration: false
|
||||||
|
calibre_web_enable_webdav: true
|
||||||
|
calibre_web_enable_opds: true
|
||||||
|
calibre_web_admin_user: "zailon"
|
||||||
|
calibre_web_admin_password: "zailon123"
|
||||||
|
|
||||||
# ------------192.168.1.204 photo------------
|
# ------------192.168.1.204 photo------------
|
||||||
|
|
||||||
@ -127,6 +125,17 @@ immich_db_name: "immich"
|
|||||||
immich_version: "release"
|
immich_version: "release"
|
||||||
# immich_public_url: "https://photos.yourdomain.com" # раскомментирую если нужно
|
# immich_public_url: "https://photos.yourdomain.com" # раскомментирую если нужно
|
||||||
|
|
||||||
|
# ------------192.168.1.206 talk------------
|
||||||
|
|
||||||
|
# Mumble
|
||||||
|
mumble_base_dir: "/mnt/mumble"
|
||||||
|
mumble_data_dir: "{{ mumble_base_dir }}/data"
|
||||||
|
mumble_port: "45131"
|
||||||
|
mumble_ice_port: "6502"
|
||||||
|
mumble_server_password: "passw0rd"
|
||||||
|
mumble_superuser_password: "13qeadZC"
|
||||||
|
mumble_max_users: "100"
|
||||||
|
|
||||||
# ------------192.168.1.208 manage------------
|
# ------------192.168.1.208 manage------------
|
||||||
|
|
||||||
# MeshCentral
|
# MeshCentral
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
[infra]
|
[infra]
|
||||||
gateway ansible_host=192.168.1.201 int_ip=192.168.1.201
|
gateway ansible_host=192.168.1.201 int_ip=192.168.1.201
|
||||||
data ansible_host=192.168.1.222 int_ip=192.168.1.222
|
data ansible_host=192.168.1.202 int_ip=192.168.1.202
|
||||||
media ansible_host=192.168.1.223 int_ip=192.168.1.223
|
media ansible_host=192.168.1.223 int_ip=192.168.1.223
|
||||||
photo ansible_host=192.168.1.224 int_ip=192.168.1.224
|
photo ansible_host=192.168.1.204 int_ip=192.168.1.204
|
||||||
talk ansible_host=192.168.1.226 int_ip=192.168.1.226
|
talk ansible_host=192.168.1.226 int_ip=192.168.1.226
|
||||||
cloud ansible_host=192.168.1.225 int_ip=192.168.1.225
|
cloud ansible_host=192.168.1.225 int_ip=192.168.1.225
|
||||||
manage ansible_host=192.168.1.228 int_ip=192.168.1.228
|
manage ansible_host=192.168.1.228 int_ip=192.168.1.228
|
||||||
|
|||||||
@ -21,7 +21,8 @@
|
|||||||
- { role: docker, tags: deploy_docker }
|
- { role: docker, tags: deploy_docker }
|
||||||
- { role: ampache, tags: deploy_ampache }
|
- { role: ampache, tags: deploy_ampache }
|
||||||
- { role: audiobookshelf, tags: deploy_audiobookshelf }
|
- { role: audiobookshelf, tags: deploy_audiobookshelf }
|
||||||
|
- { role: calibre-web, tags: deploy_calibre_web }
|
||||||
|
|
||||||
- hosts: photo
|
- hosts: photo
|
||||||
roles:
|
roles:
|
||||||
- { role: docker, tags: deploy_docker }
|
- { role: docker, tags: deploy_docker }
|
||||||
|
|||||||
53
roles/calibre-web/tasks/main.yml
Normal file
53
roles/calibre-web/tasks/main.yml
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
---
|
||||||
|
- name: Create Calibre directories
|
||||||
|
file:
|
||||||
|
path: "{{ item }}"
|
||||||
|
state: directory
|
||||||
|
mode: 0755
|
||||||
|
loop:
|
||||||
|
- "{{ calibre_base_dir }}"
|
||||||
|
- "{{ calibre_config_dir }}"
|
||||||
|
|
||||||
|
- name: Ensure books directory has correct permissions
|
||||||
|
file:
|
||||||
|
path: "{{ calibre_library_dir }}"
|
||||||
|
state: directory
|
||||||
|
mode: 0755
|
||||||
|
owner: "1000"
|
||||||
|
group: "1000"
|
||||||
|
|
||||||
|
- name: Deploy Calibre-web docker-compose.yml
|
||||||
|
template:
|
||||||
|
src: docker-compose.yml.j2
|
||||||
|
dest: "{{ calibre_base_dir }}/docker-compose.yml"
|
||||||
|
mode: 0644
|
||||||
|
|
||||||
|
- name: Start Calibre-web services
|
||||||
|
shell: |
|
||||||
|
cd {{ calibre_base_dir }}
|
||||||
|
docker compose up -d
|
||||||
|
args:
|
||||||
|
executable: /bin/bash
|
||||||
|
|
||||||
|
- name: Wait for Calibre-web to start
|
||||||
|
pause:
|
||||||
|
seconds: 20
|
||||||
|
|
||||||
|
- name: Check Calibre-web container status
|
||||||
|
shell: docker ps --filter name=calibre-web
|
||||||
|
register: calibre_web_status
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: Show Calibre-web status
|
||||||
|
debug:
|
||||||
|
var: calibre_web_status.stdout
|
||||||
|
|
||||||
|
- name: Verify Calibre-web is accessible
|
||||||
|
uri:
|
||||||
|
url: "http://{{ ansible_host }}:{{ calibre_web_port }}"
|
||||||
|
status_code: 200
|
||||||
|
timeout: 30
|
||||||
|
register: calibre_web_accessible
|
||||||
|
until: calibre_web_accessible.status == 200
|
||||||
|
retries: 5
|
||||||
|
delay: 10
|
||||||
27
roles/calibre-web/templates/docker-compose.yml.j2
Normal file
27
roles/calibre-web/templates/docker-compose.yml.j2
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
version: '3.8'
|
||||||
|
|
||||||
|
services:
|
||||||
|
calibre-web:
|
||||||
|
image: lscr.io/linuxserver/calibre-web:latest
|
||||||
|
container_name: calibre-web
|
||||||
|
environment:
|
||||||
|
- PUID=1000
|
||||||
|
- PGID=1000
|
||||||
|
- TZ={{ timezone }}
|
||||||
|
- DOCKER_MODS=linuxserver/mods:universal-calibre
|
||||||
|
- OAUTHLIB_RELAX_TOKEN_SCOPE=1
|
||||||
|
# Включение WebDAV и OPDS
|
||||||
|
- WEBDAV__ENABLED={{ calibre_web_enable_webdav | default(true) | lower }}
|
||||||
|
- OPDS__ENABLED={{ calibre_web_enable_opds | default(true) | lower }}
|
||||||
|
volumes:
|
||||||
|
- {{ calibre_config_dir }}:/config
|
||||||
|
- {{ calibre_library_dir }}:/books
|
||||||
|
ports:
|
||||||
|
- "{{ calibre_web_port }}:8083"
|
||||||
|
restart: unless-stopped
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
|
||||||
|
networks:
|
||||||
|
default:
|
||||||
|
name: {{ docker_network | default('web') }}
|
||||||
Loading…
Reference in New Issue
Block a user