Tropic Host

Audiobookshelf VPS-ზე: თქვენი აუდიოწიგნებისა და პოდკასტების ბიბლიოთეკა

1 წაკითხვის წთ
Tropic
Audiobookshelf VPS-ზე: თქვენი აუდიოწიგნებისა და პოდკასტების ბიბლიოთეკა

Language: ka

Audiobookshelf: როგორ შექმნათ საკუთარი აუდიოწიგნებისა და პოდკასტების სერვერი

წიგნის კომპიუტერში მოსმენის დაწყება, შემდეგ იმავე ადგილიდან ტელეფონზე გაგრძელება, მოგზაურობის წინ ჩამოტვირთვა და მოწყობილობის შეცვლის შემდეგ პროგრესის შენარჩუნება — ამისთვის კიდევ ერთ ფასიან სერვისზე დამოკიდებულება საჭირო არ არის. Audiobookshelf თქვენს აუდიოკოლექციას აქცევს მოწესრიგებულ ონლაინბიბლიოთეკად ყდებით, თავებით, აპებითა და მთელი ოჯახისთვის ცალკე პროფილებით.

ეს არც მაღაზიაა და არც უფასო წიგნების წყარო. მომხმარებლები თავად ამატებენ კანონიერად მიღებულ აუდიოფაილებს, რომლებსაც შეუთავსებელი DRM-დაცვა არ აქვს. სანაცვლოდ წიგნები, მოსმენის ისტორია და პარამეტრები საკუთარ სერვერზე რჩება.

რა არის Audiobookshelf?

Audiobookshelf არის უფასო, ღია კოდის მქონე, საკუთარ სერვერზე განსათავსებელი აუდიოწიგნებისა და პოდკასტების სერვერი. ის ასკანერებს მედია ფაილების საქაღალდეებს, აწყობს ბიბლიოთეკას ავტორებისა და სერიების მიხედვით, იღებს მეტამონაცემებსა და ყდებს და შემდეგ კოლექციის მოსმენის საშუალებას ბრაუზერიდან ან მობილური აპიდან გაძლევთ.

პრაქტიკულად, ეს არის პირადი სტრიმინგის სერვისი, რომლის კატალოგსაც თავად ქმნით. სერვერი ინახავს ბიბლიოთეკასა და მოსმენის პროგრესს, ხოლო ტელეფონი, პლანშეტი ან კომპიუტერი კლიენტის როლს ასრულებს. ამიტომ ერთ მოწყობილობაზე შეწყვეტილ წიგნს მეორეზე შენახული პოზიციიდან გააგრძელებთ.

Audiobookshelf შეიძლება სახლში NAS-ზე ან მინი-კომპიუტერზე იმუშაოს. VPS უფრო მოსახერხებელია, როცა ნებისმიერი ქსელიდან გჭირდებათ წვდომა სახლის კომპიუტერის მუდმივად ჩართული დატოვების, პორტების გადამისამართების ან სახლის ინტერნეტზე დამოკიდებულების გარეშე.

რა შეუძლია Audiobookshelf-ს?

პროგრესის სინქრონიზაცია მოწყობილობებს შორის

თითოეულ მომხმარებელს აქვს საკუთარი შენახული პოზიცია, ისტორია და სანიშნეები. ხელმისაწვდომია ვებინტერფეისი, Progressive Web App და ოფიციალური მობილური კლიენტები Android-ისა და iOS-ისთვის. წიგნის ტელეფონში წინასწარ ჩამოტვირთვა და ინტერნეტის გარეშე მოსმენაც შეგიძლიათ.

ცალკე ანგარიშების შექმნა

ერთ სერვერზე რამდენიმე მომხმარებლის შექმნა შეიძლება ისე, რომ მათი მოსმენის პროგრესი არ აირიოს. ადმინისტრატორი მართავს ბიბლიოთეკებსა და უფლებებზე წვდომას და საჭიროების შემთხვევაში კონტენტს ტეგებით ზღუდავს. თითოეულ მომხმარებელს საკუთარი მიმდინარე წიგნების სია, ისტორია და სანიშნეები აქვს.

ბიბლიოთეკის ორგანიზება

სერვისი გარე წყაროებიდან იღებს სათაურებს, აღწერებს, ავტორებსა და ყდებს, აჯგუფებს წიგნებს ავტორებისა და სერიების მიხედვით, ასევე გაძლევთ თავების გასწორებისა და რიგის კონტროლის საშუალებას. რამდენიმე MP3 ფაილი ერთ M4B ფაილად შეიძლება გაერთიანდეს, ხოლო ყდა და მეტამონაცემები ფაილშივე ჩაიწეროს. საწყისი ფაილების შეცვლამდე ბიბლიოთეკის ასლის შექმნა უმჯობესია.

პოდკასტების ავტომატური ჩამოტვირთვა

პოდკასტის დამატება შესაძლებელია სათაურით, RSS URL-ით ან OPML ფაილით, რის შემდეგაც ახალი ეპიზოდების ავტომატური ჩამოტვირთვის განრიგს დააყენებთ. სერვისი ეპიზოდს პირდაპირ არ სტრიმავს: ფაილი ჯერ სერვერზე ინახება. ასე შეგიძლიათ დააარქივოთ ეპიზოდები, რომლებიც შეიძლება გაქრეს, თუმცა ეს დისკზე დამატებით ადგილს მოითხოვს.

ელექტრონული წიგნის აუდიოწიგნთან ერთად შენახვა

წიგნის საქაღალდეში შეგიძლიათ მოათავსოთ EPUB, PDF, CBR, CBZ, AZW3 ან MOBI ფაილი, რათა აუდიო და ტექსტი ბიბლიოთეკის ერთი ჩანაწერიდან გაიხსნას. ჩაშენებული წამკითხველი საბაზისოა და Calibre-Web-ს ან Kavita-ს ვერ ჩაანაცვლებს.

ვისთვის არის Audiobookshelf?

სერვისი განსაკუთრებით სასარგებლოა ასეთ შემთხვევებში:

  • უკვე გაქვთ აუდიოწიგნების კოლექცია MP3, M4B, M4A ან სხვა გავრცელებულ ფორმატში;
  • რამდენიმე მოწყობილობაზე უსმენთ და სინქრონიზაცია გჭირდებათ;
  • ბიბლიოთეკას ოჯახის რამდენიმე წევრი იყენებს;
  • საკუთარი პოდკასტების არქივის შენარჩუნება გსურთ;
  • ფაილებზე, მომხმარებლის ანგარიშებსა და სარეზერვო ასლებზე სრული კონტროლი გჭირდებათ;
  • ჩვეულებრივი ღრუბლოვანი საქაღალდე მოუხერხებელი გახდა, რადგან მას ყდები, თავები და მოსმენის ისტორია არ აქვს.

თუ ერთ ტელეფონში მხოლოდ ერთ ან ორ წიგნს უსმენთ, ცალკე სერვერი შესაძლოა საჭირო არ იყოს. Audiobookshelf ყველაზე სასარგებლო მაშინ ხდება, როცა კოლექცია იზრდება ან მუდმივად დისტანციური წვდომა გჭირდებათ.

როგორი სერვერი სჭირდება Audiobookshelf-ს?

პროექტს უნივერსალური ოფიციალური მინიმუმი არ აქვს: დატვირთვა დამოკიდებულია ბიბლიოთეკის ზომაზე, მომხმარებლების რაოდენობაზე, ფაილების სკანირებასა და იმაზე, საჭიროა თუ არა აუდიოს ტრანსკოდირება. მცირე პირადი კოლექციისთვის საწყის სახელმძღვანელოდ ასეთი კონფიგურაცია გამოგადგებათ:

სცენარიCPURAMდისკი
1–2 მომხმარებელი, მცირე ბიბლიოთეკა1 vCPU1 GB30–40 GB-დან
ოჯახური გამოყენება და რამდენიმე ერთდროული კავშირი2 vCPU2 GB60–100 GB-დან
დიდი ბიბლიოთეკა, ხშირი სკანირება და ფაილების დამუშავება2–4 vCPU4 GBკოლექციის ზომის მიხედვით

ეს პრაქტიკული რეკომენდაციაა და არა ოფიციალური მინიმუმი. მთავარი რესურსი დისკის სივრცეა. 64–128 Kbit/s ხარისხის ათსაათიანი წიგნი დაახლოებით 0.3–0.6 GB-ს იკავებს, ამიტომ ასი წიგნისთვის პოდკასტებისა და სარეზერვო ასლების გამოკლებით დაახლოებით 30–60 GB დაგჭირდებათ. გონივრულია დაიწყოთ მცირე VPS-ით, რომლის განახლებაც მოგვიანებით შეიძლება.

როგორ დავაყენოთ Audiobookshelf Docker Compose-ით

დეველოპერები ინსტალაციისთვის Docker-ს გვირჩევენ. შემდეგი ნაბიჯები გულისხმობს, რომ Docker და Compose პლაგინი Ubuntu-ზე ან Debian-ზე უკვე დაყენებულია.

შექმენით პროექტის საქაღალდე და მონაცემთა დირექტორიები:

mkdir -p /opt/audiobookshelf/{config,metadata,audiobooks,podcasts}
cd /opt/audiobookshelf

შექმენით compose.yml ფაილი:

services:
  audiobookshelf:
    image: ghcr.io/advplyr/audiobookshelf:latest
    container_name: audiobookshelf
    ports:
      - "13378:80"
    volumes:
      - ./config:/config
      - ./metadata:/metadata
      - ./audiobooks:/audiobooks
      - ./podcasts:/podcasts
    environment:
      - TZ=UTC
    restart: unless-stopped

გაუშვით კონტეინერი:

docker compose up -d

გაშვების შემდეგ პანელი დროებით ხელმისაწვდომი იქნება:

http://SERVER_IP:13378

პირველი ვიზიტისას შექმენით root ადმინისტრატორის ანგარიში, შემდეგ დაამატეთ Books ტიპის ბიბლიოთეკა და მიუთითეთ /audiobooks დირექტორია. პოდკასტებისთვის შექმენით ცალკე ბიბლიოთეკა გზით /podcasts.

როგორ მოვაწყოთ აუდიოწიგნების საქაღალდეები სწორად

Audiobookshelf-ში ერთი წიგნი, როგორც წესი, ერთ საქაღალდეს შეესაბამება. ყველაზე გასაგები სტრუქტურა ასეთია:

/audiobooks/
  Author/
    Series/
      01 - Book title/
        01 - Chapter.mp3
        02 - Chapter.mp3
        cover.jpg

ცალკე მდგომი წიგნისთვის სერიის დონე შეიძლება გამოტოვოთ. ერთი M4B ფაილიც შეიძლება საკუთარ წიგნის საქაღალდეში შეინახოს.

სტრუქტურას მნიშვნელობა აქვს: თუ ერთი ავტორის რამდენიმე წიგნი საერთო საქაღალდეში მოთავსდება, სკანერმა შესაძლოა ისინი ბიბლიოთეკის ერთ ჩანაწერად გააერთიანოს. პირველი სრული სკანირების წინ ფაილების ორგანიზება სჯობს. წიგნის ერთი ბიბლიოთეკიდან მეორეში გადატანა ახალი ელემენტის შექმნად ითვლება, ამიტომ მისი მეტამონაცემები და პროგრესი ავტომატურად არ გადაიტანება.

როგორ გავხადოთ ბიბლიოთეკა ინტერნეტიდან უსაფრთხოდ ხელმისაწვდომი

პანელის ღია HTTP პორტზე 13378 მუდმივად დატოვება რეკომენდებული არ არის. დისტანციური წვდომისთვის უმჯობესია დააკავშიროთ დომენი, HTTPS სერტიფიკატი და Nginx-ზე, Caddy-ზე ან Traefik-ზე დაფუძნებული reverse proxy.

Audiobookshelf WebSocket-ს იყენებს, ამიტომ პროქსიში მისი მხარდაჭერა უნდა ჩართოთ. HTTPS-ის კონფიგურაციის შემდეგ კონტეინერის პორტი მხოლოდ ლოკალურ ინტერფეისზე შეიძლება მიაბათ:

ports:
  - "127.0.0.1:13378:80"

გამოიყენეთ უნიკალური პაროლები, შექმენით ცალკე ანგარიში თითოეული მსმენელისთვის, განაახლეთ კონტეინერი და ადმინისტრატორის უფლებები აუცილებლობის გარეშე არ მიანიჭოთ.

რა უნდა იცოდეთ სარეზერვო ასლების შესახებ

Audiobookshelf-ის ჩაშენებული სარეზერვო სისტემა ინახავს მონაცემთა ბაზასა და ზოგიერთ მეტამონაცემს, მათ შორის metadata დირექტორიიდან აღებულ ყდებს. აუდიოწიგნები, პოდკასტები და მედია ფაილებთან ერთად შენახული ყდები ამ ასლში არ შედის.

ამიტომ საიმედო სარეზერვო სტრატეგიას ორი ნაწილი აქვს:

  1. მონაცემთა ბაზისა და მეტამონაცემების ავტომატური ჩაშენებული ასლი;
  2. audiobooks და podcasts დირექტორიების ცალკე ასლი სხვა დისკზე ან დისტანციურ საცავში.

/config დირექტორია SQLite მონაცემთა ბაზას შეიცავს. დეველოპერები გვირჩევენ, ის იმავე სერვერის ლოკალურ დისკზე შეინახოთ და ქსელით არ დაამაუნთოთ: ქსელურმა საცავმა შეიძლება წარმადობა შეამციროს და მონაცემთა ბაზა დააზიანოს.

Audiobookshelf VPS-ზე tropic.host-დან

პირადი ბიბლიოთეკისთვის მაქსიმალური გამოთვლითი სიმძლავრე ნაკლებად მნიშვნელოვანია, ვიდრე უწყვეტი ხელმისაწვდომობა, საკმარისი დისკის სივრცე და სტაბილური კავშირი. VPS-ზე Audiobookshelf მთელი დღე-ღამის განმავლობაში მუშაობს და ტელეფონიდან, კომპიუტერიდან ან პლანშეტიდან ხელმისაწვდომი რჩება თქვენი სახლის ქსელის მდგომარეობის მიუხედავად.

მცირე კოლექციისთვის შეგიძლიათ დაიწყოთ საბაზისო tropic.host სერვერით, დააყენოთ Docker, დააკავშიროთ დომენი და HTTPS, შემდეგ კი ბიბლიოთეკის ზრდასთან ერთად რესურსები გაზარდოთ. გეგმის არჩევისას ჯერ შეაფასეთ აუდიოფაილების ზომა და ახალი წიგნებისა და პოდკასტებისთვის ადგილი დატოვეთ.

შეზღუდვები, რომლებიც წინასწარ უნდა იცოდეთ

Audiobookshelf წიგნების კატალოგს არ გთავაზობთ და DRM-დაცვას არ ხსნის. ის მუშაობს ფაილებთან, რომლებსაც მომხმარებლები თავად ამატებენ და რომელთა შენახვის უფლებაც აქვთ.

მობილური აპები აქტიურად ვითარდება და ოფიციალურად ჯერ კიდევ ბეტა სტატუსი აქვს, ამიტომ ვებინტერფეისი ან PWA სასარგებლო სათადარიგო ვარიანტად რჩება. ელექტრონული წიგნების მხარდაჭერა საბაზისოა, ხოლო დიდი კოლექციის მოწესრიგებულად იმპორტისთვის საქაღალდეების სტრუქტურის დაცვა და მეტამონაცემების ხანდახან ხელით გასწორება დაგჭირდებათ.

აუდიოწიგნებისთვის სერვისი გთავაზობთ ყველაფერს, რაც ჩვეულებრივ ღრუბლოვან საქაღალდეს აკლია: თავებს, სერიებს, პროგრესის აღრიცხვას, ოფლაინ ჩამოტვირთვებს, პროფილებსა და პოდკასტების მხარდაჭერას.

დასკვნა

Audiobookshelf აუდიოფაილებს რამდენიმე მოწყობილობისა და მომხმარებლისთვის განკუთვნილ პირად მედიაბიბლიოთეკად აქცევს. Docker Compose-ით ინსტალაცია მარტივია, თუმცა საიმედო მუშაობისთვის საჭიროა მოწესრიგებული საქაღალდეები, HTTPS და მედია ფაილების ცალკე სარეზერვო ასლები.

FAQ

Audiobookshelf უფასოა?

დიახ. სერვერი და ოფიციალური კლიენტები ღია კოდის მქონე პროგრამის სახით ვრცელდება. გადახდა მხოლოდ აპარატურისთვის, VPS-ისთვის, დომენისთვის ან დამატებითი საცავისთვის დაგჭირდებათ, თუ მათ იყენებთ.

Audiobookshelf უფასო აუდიოწიგნებს გთავაზობთ?

არა. ეს თქვენი საკუთარი კოლექციის სერვერი და დამკვრელია. აუდიოფაილები კანონიერად უნდა მოიპოვოთ და ბიბლიოთეკაში თავად დაამატოთ.

ინტერნეტის გარეშე შემიძლია წიგნების მოსმენა?

დიახ. მობილური აპი საშუალებას გაძლევთ წიგნი მოწყობილობაში წინასწარ ჩამოტვირთოთ. ჩამოტვირთვის შემდეგ მოსასმენად სერვერთან კავშირი საჭირო აღარ არის.

რამდენი RAM სჭირდება Audiobookshelf-ს?

მცირე ბიბლიოთეკისა და ერთი-ორი მომხმარებლისთვის 1 GB RAM გონივრული საწყისი არჩევანია. რამდენიმე მსმენელის, ფართო სკანირების ან ფაილების დამუშავებისთვის 2–4 GB-ის არჩევა უკეთესია.

აუცილებელია Audiobookshelf-ის VPS-ზე დაყენება?

არა. ის შეიძლება სახლის სერვერზე, NAS-ზე ან თავსებად კომპიუტერზე იმუშაოს. VPS უფრო მოსახერხებელია, როცა სხვადასხვა ქსელიდან დღე-ღამის ნებისმიერ დროს გჭირდებათ წვდომა სახლის როუტერის კონფიგურაციისა და სახლის კავშირზე დამოკიდებულების გარეშე.