VPSలో Chaptarr self-host: audiobooks కోసం పూర్తి setup
Readarr 27 June 2025న retire అయిన తర్వాత Chaptarr ఎలా పనిచేస్తుందో తెలుసుకోండి: Compose service, PUID, PGID, metadata సమస్యలు, audiobooks మరియు ebooks నిర్వహణ.
Chaptarr అంటే ఏమిటి, Readarr వినియోగదారులకు ఇది ఎందుకు అవసరం
Chaptarr అనేది ఒకే instance నుంచి audiobooks మరియు ebooks ను నిర్వహించే Readarr fork. ఇది కొత్త releases కోసం పర్యవేక్షించి, వాటిని మీ download client కు పంపుతుంది. తరువాత ఫలితాలను rename చేసి, మీ library లో సక్రమంగా అమర్చుతుంది. ఇది ఏదీ play చేయదు. అందువల్ల దీన్ని Audiobookshelf వంటి player తో కలిపి ఉపయోగించాలి.
Readarr ను 27 June 2025న నిలిపివేశారు. Servarr team ఇచ్చిన అధికారిక notice ప్రకారం కారణం ఇదే: ప్రాజెక్ట్ metadata ఉపయోగించలేని స్థితికి చేరింది. Open Library కు మార్పు చేయాలన్న community ప్రయత్నం కూడా నిలిచిపోయింది. Repository archive చేయబడింది. దీంతో పుస్తకాలు మరియు audiobooks collections కు నిర్వహణ కోసం maintained manager లేకుండా పోయింది. Chaptarr ఆ బాధ్యతను స్వీకరించింది. ఇది Sonarr మరియు Radarr నుంచి మీకు ఇప్పటికే తెలిసిన నిర్మాణాన్ని (indexers, download clients, quality profiles, root folders) కొనసాగిస్తుంది. అదనంగా audiobook నిర్వహణను అందిస్తుంది: narrator ఆధారిత organization, ఒకే title కు multiple editions, M4B మరియు chaptered MP3 support, అలాగే MP3 ను M4B కు conversion.
ఈ walkthrough లో chaptarr/chaptarr:0.9.925 image tag ఉపయోగించబడింది. 9 August 2026న ఇదే newest release. 11 October 2026 నాటికి newest release 0.9.965. ఇది 27 September 2026న published అయింది. కింది దశలను 0.9.925 పై మాత్రమే test చేశారు. అందువల్ల files లో ఆ tag నే ఉంచారు. మీరు newer release కు మారే ముందు release notes చదవండి. Chaptarr తనను beta software గా పేర్కొంటుంది. మీరు తిరిగి పొందలేని library కు దీన్ని అనుసంధానించే ముందు చివర్లోని maintenance section చదవండి.
ప్రారంభించడానికి ముందు అవసరమైనవి
Docker మరియు Compose plugin నడుస్తున్న VPS, అలాగే library కోసం తగినంత disk space అవసరం. Audiobooks పెద్దవిగా ఉంటాయి. Hardlinks ఉపయోగించలేని import సమయంలో కొంతకాలం ఒక file కు రెండు copies నిల్వ ఉంటాయి. దిగువ volume విభాగంలో దీనిని వివరించారు. మీ VPSలో Docker ఇంకా లేకపోతే, ముందుగా VPSలో Dockerను ఇన్స్టాల్ చేసి నడపడం చూడండి. తరువాత ఇక్కడికి తిరిగి రండి.
ప్రస్తుతం Chaptarr Docker image రూపంలో మాత్రమే అందుబాటులో ఉంది. Native support అభివృద్ధిలో ఉన్నట్లు పేర్కొన్నారు. Experimental Windows build ను భవిష్యత్తులో అందించాలనుకుంటున్నారు. Distribution package లేదు. Container తన database ను /config లో SQLiteగా defaultగా నిల్వ చేస్తుంది. మీరు ఇప్పటికే PostgreSQL server నడుపుతున్నట్లయితే, Chaptarr__Postgres__* environment variables ద్వారా దాన్ని ఉపయోగించవచ్చు. ఒకే boxలో ఒక user కోసం SQLite సరైన ఎంపిక.
Chaptarr కోసం Compose service
ఈ service ఇప్పటికే ఉన్న stack లో చేరుతుంది. ఇది విడుదలైన tag ను pin చేస్తుంది, web UI ను loopback కు మాత్రమే publish చేస్తుంది, అలాగే మీ download client ఇప్పటికే ఉపయోగిస్తున్న network లో చేరుతుంది.
services:
chaptarr:
image: chaptarr/chaptarr:0.9.925
container_name: chaptarr
environment:
- PUID=1000
- PGID=1000
- UMASK=002
- TZ=Europe/Berlin
volumes:
- ./config:/config
- /srv/media/audiobooks:/audiobooks
- /srv/media/ebooks:/ebooks
- /srv/media/downloads:/downloads
ports:
- 127.0.0.1:8789:8789
restart: unless-stopped
networks:
- arr
networks:
arr:
external: trueexternal: true line అంటే “ఈ network ఇప్పటికే ఉంది; దానికి attach అవ్వండి” అని అర్థం. Prowlarr మరియు మీ torrent client వేర్వేరు Compose project ల నుంచి వచ్చినప్పుడు దీన్ని ఉపయోగించండి. లేకపోతే రెండవ Compose file తనకంటూ వేరుచేయబడిన network ను సృష్టిస్తుంది. అప్పుడు Chaptarr పేరు ద్వారా qbittorrent ను ఎప్పటికీ resolve చేయలదు. నిజమైన పేరును docker network ls నుంచి తెలుసుకోండి. మీ stack ఇప్పటికే ఒకే file లో ఉంటే, ఆ file కు chaptarr: service ను జోడించి, మొత్తం networks: block ను తొలగించండి. విస్తృత నిర్మాణం గురించి Docker Compose లో పూర్తి arr stack లో, naming rules గురించి Compose networks మరియు service names ఎలా resolve అవుతాయి లో చూడండి.
ముందుగా config directory ను మీరే సృష్టించి, తరువాత service ను ప్రారంభించండి.
mkdir -p ./config
sudo chown 1000:1000 ./config
docker compose up -d
docker compose ps
docker compose logs -f chaptarrdocker compose ps container ను Up గా చూపాలి. Restarting గా చూపబడిన container ప్రారంభం కాలేదు మరియు మళ్లీ ప్రయత్నిస్తోంది. కారణం తెలుసుకోవడానికి దాని logs చదవండి. app port 8789 పై listening ప్రారంభించిన తర్వాత log scrolling ఆగిపోతుంది.
PUID, PGID, మరియు Docker rootగా సృష్టించే directory
వాటిని unset గా ఉంచితే Chaptarr డిఫాల్ట్గా PUID=99 మరియు PGID=100 ను ఉపయోగిస్తుంది. అవి unRAID విలువలు. సాధారణ Ubuntu VPSలో అవి ఉపయోగకరమైన ఏ userకూ చెందవు. అందువల్ల మీ loginతో రాయలేని ownerతో files సృష్టించబడతాయి. మీ స్వంత సంఖ్యలను id -u మరియు id -g తో చూసి, వాటిని fileలో నమోదు చేయండి.
అదే filesను ఉపయోగించే ప్రతి containerకు ఇదే pair అవసరం. Download client /srv/media/downloadsలో రాస్తుంది. Chaptarr fileను /srv/media/audiobooksకు తరలిస్తుంది. Player అక్కడి నుంచే చదువుతుంది. Download client 1000:1000గా రాస్తూ, Chaptarr 99:100గా నడిస్తే import విఫలమవుతుంది. Fileకు owner ఎవరు అన్నది ఒక్కటే నిర్ణయాత్మకం కాదు. Fileను సృష్టించడానికి, పేరు మార్చడానికి లేదా తొలగించడానికి, అది ఉన్న directoryపై write permission అవసరం. సాధారణ 755 modeతో user 1000 సృష్టించిన directoriesలో 99:100కు write access ఉండదు. అందువల్ల Chaptarr bookను libraryలోకి చేర్చలేను లేదా downloads నుంచి తొలగించలేను. UMASK=002 కొత్త filesను group-writableగా సృష్టిస్తుంది. ఒకే media groupను అనేక containers పంచుకున్నప్పుడు ఇదే అవసరం. పూర్తి mappingను PUID మరియు PGID container userను host filesకు ఎలా అనుసంధానిస్తాయోలో చూడండి.
README ముందుగా config directoryని సృష్టించి, Compose user: overrideను నివారించమని సూచిస్తుంది. docker compose upను run చేసే సమయంలో ./config లేకపోతే, Docker దాన్ని మీకోసం సృష్టిస్తుంది. దాని owner root:rootగా ఉంటుంది. pinned 0.9.925 imageలో entrypoint మొదట rootగా ప్రారంభమవుతుంది. Configured UID మరియు GIDకు మారే ముందు /config మరియు దాని database files యొక్క ownershipను సరిచేస్తుంది. అందువల్ల కొత్తగా root-owned directory ఉండటం సాధారణంగా restart loopకు కారణం కాదు. user: override ఈ setupను bypass చేస్తుంది. Read-only mount లేదా ownership మార్పులను నిరాకరించే filesystem database writesను ఇప్పటికీ అడ్డుకోవచ్చు. ls -ln ./configతో తనిఖీ చేయండి. ఇది పేర్లకు బదులుగా numeric ownersను చూపిస్తుంది. రెండు zeros ఉంటే owner root అని అర్థం. Writable local directoryలో permissions failure ఉందని logs నిర్ధారిస్తే, sudo chown -R 1000:1000 ./configతో దాన్ని సరిచేసి containerను మళ్లీ start చేయండి.
ప్రత్యేక audiobook మరియు ebook volumes hardlinks ను ఎందుకు పనిచేయకుండా చేస్తాయి
పైన చూపిన layout లో /audiobooks, /ebooks మరియు /downloads ను ప్రత్యేక bind mounts గా అమర్చారు. ఇది project యొక్క స్వంత run command కు అనుగుణంగా ఉంటుంది. చదవడం సులభమే, కానీ దీనికి ఒక వాస్తవమైన పరిమితి ఉంది: hardlinks పనిచేయడం ఆగిపోతుంది.
hardlink అనేది disk పై ఉన్న అదే data కు రెండవ పేరు. ఇది అదనపు స్థలాన్ని ఉపయోగించదు మరియు వెంటనే సృష్టించబడుతుంది. అందుకే arr family copying కంటే దీనినే ప్రాధాన్యం ఇస్తుంది. hardlink ఒకే filesystem లో మాత్రమే పనిచేస్తుంది. Container లో ఇవి మూడు ప్రత్యేక mount points గా ఉంటాయి. అందువల్ల host paths ఒకే disk పై ఉన్నా kernel ఆ link ను నిరాకరిస్తుంది. దీన్ని మీరే పరీక్షించండి.
docker exec chaptarr sh -c 'touch /downloads/linktest && ln /downloads/linktest /audiobooks/linktest'Invalid cross-device link తో ముగిసే error తో command విఫలమవుతుంది. ఇది mount points మధ్య link సృష్టించడాన్ని kernel నిరాకరిస్తోందని సూచిస్తుంది. Chaptarr file ను copy చేయడానికి fallback అవడానికి ఇదే ఖచ్చితమైన కారణం. Copy సరైనదే, కానీ నెమ్మదిగా ఉంటుంది. అలాగే torrent ను తొలగించే వరకు audiobook రెండుసార్లు ఉంటుంది. మీరు ఇంకా seeding చేస్తున్నప్పుడు దాన్ని తొలగించరు. తరువాత /srv/media/downloads/linktest ను తొలగించండి.
hardlinks కొనసాగాలంటే ఒక parent directory ను mount చేయండి:
volumes:
- ./config:/config
- /srv/media:/dataతరువాత Chaptarr లోని root folders ను /data/audiobooks మరియు /data/ebooks గా సెట్ చేయండి. Download client కు కూడా అదే /srv/media:/data mount ఇవ్వండి, తద్వారా రెండు containers ఒకే identical path ను చూడగలవు. ముందుగా host side ఒకే filesystem పై ఉందని నిర్ధారించండి: రెండింటికీ Filesystem column లో df -h /srv/media/downloads /srv/media/audiobooks ఒకే value ను print చేయాలి. వేర్వేరు values అంటే వేర్వేరు disks అని అర్థం. ఏ mount layout అయినా వాటి మధ్య hardlink సృష్టించలేను. దీనికి మరియు named storage కు మధ్య trade-off ను media కోసం bind mounts మరియు named volumes లో వివరించారు.
వెబ్ UI ను బయటకు బహిర్గతం చేయకుండా యాక్సెస్ చేయడం
Port line ను 127.0.0.1 లో publish చేయడానికి కారణం ఉంది. ufw deny 8789 publish చేసిన Docker port ను రక్షించదు. Docker తన స్వంత NAT (network address translation) నియమాలను kernel, ufw నియమాలను చేరుకునే ముందే చేరుకునే chain లో రాస్తుంది. అందువల్ల మీ నియమాన్ని పరిశీలించేలోపే traffic forward అవుతుంది. ఈ ప్రవర్తన వల్ల తరచుగా సమస్యలు వస్తాయి. దీని గురించి publish చేసిన Docker port మీ ufw నియమాలను ఎందుకు పట్టించుకోదు లో వివరించారు. Loopback కు bind చేయడం ద్వారా ఈ సమస్య పూర్తిగా నివారించబడుతుంది.
మీ స్వంత machine నుంచి SSH tunnel ద్వారా UI ను యాక్సెస్ చేయండి:
ssh -N -L 8789:127.0.0.1:8789 you@your-serverఆ tunnel ను నడుస్తూనే ఉంచి, మీ browser లో http://127.0.0.1:8789 తెరవండి. మొదటి run లో authentication ను configure చేయండి. ఆ తర్వాత మాత్రమే దాని ముందు TLS (transport layer security) కలిగిన reverse proxy ను ఉపయోగించడాన్ని పరిశీలించండి. ఇలాంటి tools లో మూడు లేదా నాలుగు వాటికి వేర్వేరు password లతో tunnel చేయాల్సి వచ్చినప్పుడు, proxy వెనుక Authentik వంటి self-hosted single sign-on server ఉంచడం మరింత క్రమబద్ధమైన పరిష్కారం. అప్పుడు ఒక login అన్ని apps కు సరిపోతుంది, ఒక revocation వాటన్నింటి access ను మూసివేస్తుంది.
ఇండెక్సర్లు మరియు download client ను అనుసంధానించండి
Chaptarr ప్రామాణిక arr indexer మరియు download client protocols కు మద్దతు ఇస్తుంది. అందువల్ల Prowlarr, Sonarr కోసం indexerలను జోడించిన విధంగానే Chaptarr లోకి పంపుతుంది. సాధారణ torrent మరియు usenet clients కు ప్రత్యేక నిర్వహణ అవసరం లేకుండా అనుసంధానం చేయవచ్చు.
ఒక setting వల్ల దాదాపు అందరికీ సమస్య వస్తుంది. Chaptarr download client host ను అడిగినప్పుడు localhost లేదా 127.0.0.1 నమోదు చేయవద్దు. Container లో ఆ address అదే container ను సూచిస్తుంది. అందువల్ల Chaptarr తన స్వంత port 8080 కు అనుసంధానించడానికి ప్రయత్నించి, connect కాలేదని తెలియజేస్తుంది. బదులుగా port 8080 తో container name qbittorrent ఉపయోగించండి. రెండు containers ఒకే network లో ఉన్నాయో లేదో docker network inspect arr తో నిర్ధారించండి. ఇది అనుసంధానమైన ప్రతి container పేరును చూపిస్తుంది.
మీ download client network_mode: "service:gluetun" ద్వారా VPN container లో నడుస్తుంటే, network లో దానికి స్వంత పేరు ఉండదు. కారణం, అది Gluetun యొక్క network namespace ను పంచుకుంటుంది. Gluetun అందుబాటులో ఉంచిన port పై దాన్ని gluetun గా address చేయండి. ఈ అమరికకు, దానికి సంబంధించిన routing కు Gluetun ద్వారా download client ను route చేయడం లో వివరాలు ఉన్నాయి.
Readarr విరామం: వలసకు వాస్తవంగా ఎంత ఖర్చవుతుంది
Chaptarr, Readarr metadata sources కు అనుకూలంగా ఉండదు. ఇది అనేక providers ద్వారా తన సొంత pipeline ఉపయోగించి titles, authors మరియు editions ను గుర్తిస్తుంది. అందువల్ల Readarr నిల్వ చేసిన identifiers ఇక్కడ ఉపయోగపడవు. Database import లేదు. నేరుగా అమలు చేయగల upgrade మార్గం కూడా లేదు.
ఇప్పటికే ఉన్న library విషయంలో files సురక్షితంగా ఉంటాయి, కానీ settings సురక్షితంగా ఉండవు. ఈ ప్రక్రియలో ఇప్పటికే disk పై ఉన్న దేనినీ మార్చదు. మీరు root folder ను జోడించి, library import ను అమలు చేస్తారు. తరువాత Chaptarr కనుగొన్న files ను తన సొంత metadata తో సరిపోల్చుతుంది. మీరు మాన్యువల్గా మళ్లీ నిర్మించాల్సినవి: quality profiles, naming format, indexer మరియు client settings, అలాగే Chaptarr తప్పుగా గుర్తించిన ప్రతి match. పెద్ద library కు మాన్యువల్ corrections అవసరం అవుతాయి. కాబట్టి పది నిమిషాలకన్నా ఒక సాయంత్రం సమయం కేటాయించండి.
ఈ క్రమంలో చేయండి. Readarr container ను ఆపండి, కానీ దాని config volume ను ఉంచండి. మీరు పాత settings ను చదివి, వాటిని మళ్లీ నమోదు చేయగలుగుతారు. ముందుగా Chaptarr ను ఒక చిన్న folder కు point చేసి, మొత్తం library ను import చేయడానికి ముందు matches ను పరిశీలించండి. మీకు ఫలితం సంతృప్తికరంగా అనిపించిన తరువాతే పాత container ను తొలగించండి.
మొత్తం library ను scan చేయడానికి ముందు తెలుసుకోవాల్సిన ఒక privacy విషయం ఉంది: metadata lookups api2.chaptarr.com కు వెళ్తాయి. ఆ requests లో provider IDs, search text, media type, tags మరియు filenames ఉండవచ్చని README పేర్కొంటుంది. అయితే full paths, user identity మరియు credentials అందులో ఉండవు. Filenames మీ server ను విడిచి వెళ్తాయి. Metadata service విషయంలో ఇది సాధారణమే. అయినప్పటికీ, ఈ ఎంపికను ఉద్దేశపూర్వకంగా నిర్ణయించాలి.
ఆడియోబుక్లను ప్లేయర్కు అందించండి
Chaptarr ఫైళ్లను క్రమబద్ధీకరిస్తుంది. వాటిని ప్లే చేయడం మరో ప్రోగ్రామ్ పని. Audiobookshelf సాధారణంగా దీనికి ఉపయోగించే భాగస్వామి. ఇది పరికరాల మధ్య మీ వినే స్థితిని ట్రాక్ చేస్తుంది. దీనికి ఫోన్ యాప్లు కూడా ఉన్నాయి. దీని అధికారిక image ghcr.io/advplyr/audiobookshelf:latest. దీని documentation లోని Compose ఉదాహరణ host port 13378 ను container port 80 పై publish చేస్తుంది.
audiobookshelf:
image: ghcr.io/advplyr/audiobookshelf:latest
container_name: audiobookshelf
ports:
- 127.0.0.1:13378:80
volumes:
- ./abs/config:/config
- ./abs/metadata:/metadata
- /srv/media/audiobooks:/audiobooks
environment:
- TZ=Europe/Berlin
restart: unless-stoppedChaptarr రాసే అదే host path ను mount చేయండి. తరువాత web UI లో /audiobooks ను libraryగా జోడించండి. తదుపరి scan తర్వాత కొత్త import కనిపిస్తుంది.
మీరు ఇప్పటికే Jellyfin నడుపుతుంటే, ఆ folder ను అక్కడ libraryగా జోడించవచ్చు. అప్పుడు అది ఫైళ్లను ప్లే చేస్తుంది. ఆ భాగం setup విధానం VPSపై Jellyfin ను media serverగా నడపడం లో వివరించబడింది. ebook భాగం కోసం /srv/media/ebooks ను reader applicationకు అందించండి. ఫైల్కు పేరు పెట్టి, సరైన చోట ఉంచిన తర్వాత Chaptarr పని పూర్తవుతుంది.
నిర్వహణ ప్రమాదం: లైసెన్స్, runtime మరియు వేగంగా మారుతున్న tag
Chaptarr కు GPL-3.0 లైసెన్స్ ఉంది. దీని copyright Chaptarr contributors కు చెందుతుంది, అలాగే కొంత code Servarr team నుంచి వచ్చింది. అందువల్ల code openగానే ఉంటుంది. ఈ maintainer ప్రాజెక్ట్ను ఆపివేసినా, ఎవరైనా మళ్లీ fork చేయవచ్చు. ఇది .NET 10పై నిర్మించబడింది. August 2026 నాటికి ఇది runtime యొక్క ప్రస్తుత long term support release. అంటే ఈ ఆధారం నెలలపాటు కాకుండా సంవత్సరాలపాటు support పొందుతుంది. ఈ ప్రాజెక్ట్ వచ్చే సంవత్సరం కూడా కొనసాగుతుందా అని అంచనా వేసేటప్పుడు ఈ రెండు విషయాలు ముఖ్యమైనవి.
Version numbers వేగంగా మారుతున్నాయి. 0.9.925 ను 9 August 2026న publish చేశారు. తరువాతి ఏడు వారాల్లో మరో ఐదు releases వచ్చాయి. 0.9.958 వరకు వచ్చిన ప్రతి release ను pre-releaseగా publish చేశారు. 27 September 2026న వచ్చిన 0.9.965 మొదటిసారిగా full releaseగా గుర్తించబడింది. ఖచ్చితమైన tag ను pin చేయండి. latest ను ఉపయోగిస్తే unattended docker compose pull ఒక వారంలోనే మీ వ్యవస్థను అనేక versions ముందుకు మార్చవచ్చు. ఇంత కొత్త fork releases మధ్య తన APIని మార్చవచ్చు. దానికి అనుగుణంగా మీరు రాసిన script లేదా dashboard పనిచేయకపోవచ్చు. మీరు self-host చేసే ప్రతి కొత్త projectకు pinning అలవాటుగా చేసుకోవాలి. అందుకే openGym ను self-hosted workout trackerగా నడపడం గురించిన walkthrough కూడా ఇదే కారణంతో fixed git tag నుంచి deploy చేస్తుంది.
ప్రతి upgradeకు ముందు backup తీసుకోండి. తరువాత upgradeను ఉద్దేశపూర్వకంగా చేయండి.
docker compose stop chaptarr
sudo tar czf chaptarr-config-backup.tgz ./config
docker compose start chaptarrdocker compose pull chaptarr
docker compose up -d chaptarrసుమారు ఆరు నెలల్లో, పదకొండు వేలకు పైగా usersలో data loss సంఘటనలు ఏవీ జరగలేదని project తెలియజేస్తుంది. అయినప్పటికీ backups ఉంచాలని, కోల్పోవడం మీకు సాధ్యం కాని libraryకి దీనిని అనుసంధానించవద్దని ఇది సూచిస్తుంది. ఈ రెండు సూచనలను గంభీరంగా తీసుకోండి. config archiveను server వెలుపల మరో ప్రదేశానికి copy చేయండి. రక్షించాల్సిన data ఉన్న అదే diskలో backup ఉంటే, అది నిజమైన backup కాదు. ఆ ఒక్క tarballలో app యొక్క local state ఉంటుంది, ఎందుకంటే అందులో /config కింద ఉన్న SQLite databases మరియు configuration ఉంటాయి. ప్రత్యేక database serverలో ఉన్న dataకు database dump కూడా అవసరం. Postgres data మరియు uploaded filesతో పాటు VPSలో Chatwootను self-host చేయడంలో backup దశ ఇదే విధంగా ఉంటుంది.
వైఫల్య పరిస్థితులు, మీరు చూడబోయే strings
Container నిరంతరం restart అవుతుంది. docker compose ps లో Restarting కనిపిస్తుంది. ముందుగా docker compose logs chaptarr ను చదవండి. root-owned ./config మాత్రమే loop కు కారణమని చెప్పలేం: అప్లికేషన్ను ప్రారంభించే ముందు entrypoint సాధారణంగా దాని ownership ను సరిచేస్తుంది. Data directory కు write చేయలేమని logs చెబితే, Compose user: override, read-only mount లేదా ownership మార్పులను నిరాకరించే filesystem ఉందో తనిఖీ చేయండి. Entrypoint తన setup పూర్తి చేయడానికి override ను తొలగించండి; writable local directory కు ownership తప్పుగా ఉంటే sudo chown -R 1000:1000 ./config ను అమలు చేయండి.
Imports ఎప్పటికీ పూర్తికావు, files downloads లోనే ఉంటాయి. Chaptarr download ను చదవగలదు, కానీ library లోకి write చేయలదు. మీ PUID మరియు PGID తో ls -ln /srv/media/audiobooks ను పోల్చండి. వేరే UID కు చెందిన directory, లేదా మీ group కు చెందినప్పటికీ group write అనుమతి లేని directory, move ను ఆపుతుంది. కొత్త files కోసం UMASK=002 రెండవ పరిస్థితిని నివారిస్తుంది.
ప్రతి import తర్వాత disk usage రెట్టింపు అవుతుంది. Hardlink సృష్టించబడలేదు, కాబట్టి file copy అయింది. Volumes section లోని ln test ను అమలు చేయండి. Invalid cross-device link తో ముగిసే error దీనిని నిర్ధారిస్తుంది; single-parent mount దీనికి పరిష్కారం.
Download client connect అవదు. మీరు host గా localhost ను నమోదు చేశారు. Container లో అది Chaptarr తానే. Container name ను ఉపయోగించి, docker network inspect arr రెండు containers ను జాబితా చేస్తుందో తనిఖీ చేయండి.
Compose service ను start చేయడానికి నిరాకరిస్తుంది. Bind for 127.0.0.1:8789 failed: port is already allocated అంటే ఆ port ను మరేదో process ఉపయోగిస్తోంది. sudo ss -lntp | grep 8789 తో దాన్ని కనుగొనండి.
Browser లో ఏదీ కనిపించదు. Port ను 127.0.0.1 కు bind చేసినప్పుడు, internet ద్వారా మీ laptop connect కావడానికి అక్కడ ఏదీ ఉండదు. ఇదే ఉద్దేశించిన ప్రవర్తన. ముందుగా SSH tunnel ను తెరవండి.
FAQ
నా Readarr libraryని Chaptarrకు migrate చేయవచ్చా?
Importగా చేయలేరు. Chaptarr, Readarr metadata sourcesకు compatible కాదు మరియు తన స్వంత provider pipelineను ఉపయోగిస్తుంది. అందువల్ల Readarrలో భద్రపరిచిన identifiersకు ఇక్కడ అర్థం ఉండదు. Database conversion కూడా లేదు. Diskలోని మీ filesకు ఎలాంటి మార్పు ఉండదు. అదే pathsను root foldersగా add చేసి, library importను run చేయాలి. తరువాత Chaptarr filesను స్వయంగా match చేస్తుంది. Quality profiles, naming format, indexer settings మరియు తప్పుగా జరిగిన matchesను manualగా సరిచేయాలి. కాబట్టి అన్నింటినీ import చేయడానికి ముందు ఒక చిన్న folderతో ప్రారంభించండి.
Chaptarr నా audiobook folderలో ఎందుకు రాయలేకపోతోంది?
ఆ directoryపై container userకు write permission లేదు. సాధారణంగా directoryకి ownerగా ఉన్న userకు భిన్నమైన UIDతో container run అవడం దీనికి కారణం. ఈ variables unsetగా ఉంటే Chaptarr PUID=99 మరియు PGID=100 కు fallback అవుతుంది. అవి unRAID విలువలు, సాధారణ Ubuntu VPSలో సరైనవి కావు. వాటిని మీ స్వంత id -u మరియు id -g విలువలకు set చేయండి. Download clientలో కూడా అదే జతను ఉపయోగించండి. కొత్త files group-writableగా ఉండేందుకు UMASK=002 ను set చేయండి. Library directoryపై ownershipను ls -ln తో తనిఖీ చేయండి. ఇది namesకు బదులుగా numbersను చూపిస్తుంది, కాబట్టి వాటిని నేరుగా compare చేయవచ్చు.
Import తర్వాత నా disk usage ఎందుకు రెట్టింపు అయింది?
Hardlink చేయలేకపోవడంతో Chaptarr fileను copy చేసింది. /downloads మరియు /audiobooks ను separate bindsగా mount చేస్తే containerలో అవి వేర్వేరు mount points అవుతాయి. Mount points మధ్య hardlinkను kernel Invalid cross-device link తో నిరాకరిస్తుంది. /srv/media:/data వంటి ఒక parent directoryని mount చేసి, appలో /data/downloads మరియు /data/audiobooks ను ఉపయోగించండి. రెండు paths ఒకే host filesystemలో కూడా ఉండాలి. దీన్ని df -h నిర్ధారిస్తుంది.
Chaptarr నా audiobooksను play చేస్తుందా?
లేదు. ఇది audiobooksను కనుగొని, download చేసి, rename చేసి, filesగా నిర్వహిస్తుంది. Playback కోసం ప్రత్యేక program అవసరం. Audiobookshelf సాధారణంగా దీనితో కలిపి ఉపయోగిస్తారు. ఇది devices మధ్య మీ playback positionను గుర్తుంచుకుంటుంది. దీని కోసం official image ghcr.io/advplyr/audiobookshelf:latest ను ఉపయోగించి, అదే host audiobook pathను mount చేయండి. Folderను libraryగా add చేస్తే Jellyfin కూడా filesను play చేస్తుంది.
నాకు ముఖ్యమైన libraryపై Chaptarrను run చేయడం సురక్షితమేనా?
ఇది కొత్త fork నుంచి వచ్చిన beta software. Project కూడా ఇదే విషయాన్ని స్పష్టంగా చెబుతోంది. అయితే సుమారు ఆరు నెలల కాలంలో మరియు పదకొండు వేలకు పైగా users వద్ద data loss సంఘటనలు ఏవీ report కాలేదని పేర్కొంటోంది. భరోసా కలిగించే అంశాల్లో GPL-3.0 licence ఒకటి. దీని వల్ల codeను fork చేయవచ్చు. మరొకటి .NET 10 base. August 2026 నాటికి ఇది long term support runtime. latest కు బదులుగా 0.9.925 వంటి exact image tagను pin చేయండి. ప్రతి upgradeకు ముందు /config ను backup చేయండి. ఆ archiveను serverకు వెలుపల భద్రపరచండి.