Tropic Host

VPS-də Karakeep: axtarış və AI ilə şəxsi əlfəcin arxivi

9 dəqiqə oxu
Tropic
VPS-də Karakeep: axtarış və AI ilə şəxsi əlfəcin arxivi

Language: az

Karakeep: VPS-də şəxsi əlfəcin arxivi quraşdırmaq

Keçidi yadda saxlamaq asandır. Altı ay sonra onu tapmaq isə daha çətindir — xüsusən səhifə dəyişibsə, yoxa çıxıbsa və ya yüzlərlə əlfəcin arasında itibdisə.

Karakeep yalnız URL-i deyil, həm də səhifənin məzmununu, önizləməsini, qeydləri, şəkilləri və PDF-ləri saxlayır. Arxivdə mətn üzrə axtarış edə, elementləri siyahılarda təşkil edə və onları AI vasitəsilə avtomatik teqləyə bilərsiniz. Xidmət öz VPS-inizdə işləyir və dil modelini qoşmaq məcburi deyil.

Aşağıda Karakeep-in imkanlarını, server tələblərini və Ubuntu 24.04 üzərində Docker Compose, HTTPS və ehtiyat nüsxələri ilə quraşdırılmasını nəzərdən keçirəcəyik.

Karakeep-i yeddi addımda quraşdırmaq

  1. Linux VPS yaradın və keep.example.com kimi alt domeni ona yönəldin.
  2. Docker Engine və Docker Compose quraşdırın.
  3. Rəsmi docker-compose.yml faylını endirin.
  4. Gizli açarlar yaradın və Karakeep, Chrome və Meilisearch-i başladın.
  5. Daxili 3000 portunu bağlayın və Caddy vasitəsilə HTTPS-i aktivləşdirin.
  6. İlk hesabı yaradın, sonra açıq qeydiyyatı söndürün.
  7. Brauzer əlavəsini və ya mobil tətbiqi quraşdırıb əlfəcinlərinizi idxal edin.

Xidməti başlatmaq üçün AI açarı tələb olunmur. Açar olmadan da səhifə yadda saxlama, siyahılar, qeydlər, OCR və tam mətn üzrə axtarış işləməyə davam edir. Avtomatik teqlər və xülasələr yaradılmayacaq.

Karakeep nədir?

Karakeep keçidləri, mətn qeydlərini, şəkilləri və PDF-ləri vahid kitabxanada saxlamaq üçün açıq mənbəli, öz serverinizdə yerləşdirilən tətbiqdir. Layihə əvvəllər Hoarder adlanırdı.

Ad səpələnmiş və qarışıq görünən, lakin gizli dəyəri ola bilən əşyalar üçün işlədilən ərəb mənşəli karakeeb sözündən gəlir. Bu, tipik əlfəcin kolleksiyasını dəqiq təsvir edir: faydalı material çoxdur, amma doğru elementi tapmaq çətindir.

Keçid əlavə etdikdən sonra Karakeep onun başlığını və təsvirini alır, oxunaqlı mətni çıxarır, önizləmə yaradır və lazım olduqda səhifənin lokal nüsxəsini saxlaya bilər.

İmkanBrauzer əlfəcinləriKarakeep
Nə saxlanılırURL və başlıqMətn, önizləmə, qeydlər və əlavələr
AxtarışBaşlıq və ünvana görəMəzmun, teqlər və qeydlərə görə
Səhifə yoxa çıxarsaİşləməyən URL qalırMətn, ekran görüntüsü və ya tam arxiv qalır
TəşkilQovluqlarTeqlər, əl ilə yaradılan və ağıllı siyahılar
GirişBrauzerdəVeb, əlavələr, iOS və Android
ServerBrauzer profili və ya onun bulud xidmətiSizin VPS və ya ev serveriniz

Karakeep-in əsas imkanları

Keçidlər, qeydlər, şəkillər və PDF-lər

Hər element keçid, mətn qeydi və ya yüklənmiş fayl ola bilər. OCR şəkillərdən və PDF-lərdən mətn çıxardığı üçün onlar da axtarışda görünür. Elementə qeyd, sitat və ya əlavə fayl qoşa bilərsiniz.

Məzmun üzrə axtarış

Meilisearch saxlanılan mətni, qeydləri və metadatanı indeksləyir. Dəqiq başlığı xatırlamağa ehtiyac yoxdur: bir ifadə və ya mövzu kifayətdir. Embeddinq-lər sazlandıqda məna üzrə semantik axtarış da əlçatan olur.

Ağıllı və birgə istifadə olunan siyahılar

Tək bir element dublikat yaratmadan eyni anda bir neçə siyahıya aid ola bilər. Siyahı məxfi qala, keçid vasitəsilə paylaşıla və ya digər istifadəçilərlə birlikdə redaktə edilə bilər.

Ağıllı siyahı avtomatik yenilənən yadda saxlanılmış axtarış sorğusudur. Məsələn, o, son həftə ərzində əlavə edilmiş ai teqinə malik bütün elementləri göstərə bilər.

Səhifələrin arxivləşdirilməsi

Defolt olaraq Karakeep çıxarılmış mətni və səhifənin görünən hissəsinin ekran görüntüsünü saxlayır. Bundan əlavə, tam səhifə görüntüsünü, PDF-i və ya müstəqil HTML arxivini aktivləşdirə bilərsiniz. Bu, kitabxananı işləməyən keçidlərdən qoruyur, lakin disk istifadəsini artırır.

Autentifikasiya arxasındakı səhifələr, güclü bot əleyhinə müdafiəsi olan saytlar və interaktiv tətbiqlər tam saxlanmaya bilər. Vacib materialları ayrıca PDF və ya fayl kimi yükləmək daha məqsədəuyğundur.

Könüllü AI teqləməsi

Karakeep xarici OpenAI-uyğun API və ya lokal Ollama modeli vasitəsilə teqlər və qısa xülasələr yarada bilər. AI olmadan da tətbiq tam funksional əlfəcin meneceri olaraq qalır.

Lokal model materialları xarici provayderə göndərmir, lakin əhəmiyyətli dərəcədə daha çox RAM tələb edir. Buna görə Ollama çox vaxt əsas Karakeep instansından ayrı yerləşdirilir.

Karakeep üçün server tələbləri

Rəsmi sənədlərdə CPU və RAM üçün sabit minimum göstərilmir. Tam quraşdırmaya üç konteyner daxildir:

  • Karakeep verilənlər bazasını saxlayır və interfeysi təqdim edir;
  • başsız Chrome səhifələri açır, JavaScript-i işlədir və ekran görüntüləri çəkir;
  • Meilisearch kitabxananı indeksləyir.

Lokal LLM olmadan bir istifadəçi üçün praktik konfiqurasiya belədir:

  • 2 vCPU;
  • 2 GB RAM;
  • 20–30 GB SSD və ya NVMe;
  • Ubuntu 24.04 LTS;
  • ictimai IP ünvanı və domen.

Bir neçə istifadəçi, böyük idxal, çoxlu RSS lenti və PDF üçün 4 GB RAM daha rahatdır. Disk tələbi arxivləşdirmə rejimindən asılıdır: mətn az yer tutur, tam ekran görüntüləri, PDF-lər və videolar isə kitabxananı tez böyüdə bilər.

Karakeep-i VPS-də necə quraşdırmalı?

Bu nümunədə Ubuntu 24.04 və keep.example.com alt domenindən istifadə edilir.

1. DNS-i və firewall-u sazlayın

Serverin IP ünvanına işarə edən A DNS qeydi yaradın, sonra SSH ilə qoşulun:

ssh root@SERVER_IP
apt update && apt upgrade -y

ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw --force enable

Yeni bağlantının işlədiyini yoxlamayana qədər cari SSH sessiyasını bağlamayın.

2. Docker quraşdırın

apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

tee /etc/apt/sources.list.d/docker.sources > /dev/null <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

apt update
apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin
docker compose version

3. Karakeep konfiqurasiyasını endirin

mkdir -p /opt/karakeep
cd /opt/karakeep

curl -fsSLo docker-compose.yml \
  https://raw.githubusercontent.com/karakeep-app/karakeep/main/docker/docker-compose.yml

İki fərqli gizli açar yaradın:

openssl rand -base64 36
openssl rand -base64 36 | tr -dc 'A-Za-z0-9'

/opt/karakeep/.env faylını yaradın:

KARAKEEP_VERSION=release
NEXTAUTH_SECRET=INSERT_THE_FIRST_SECRET
MEILI_MASTER_KEY=INSERT_THE_SECOND_SECRET
NEXTAUTH_URL=https://keep.example.com
DISABLE_SIGNUPS=false
DB_WAL_MODE=true
RATE_LIMITING_ENABLED=true

.env faylını yayımlamayın: birinci açar autentifikasiya tokenlərini imzalayır, ikinci isə Meilisearch-i qoruyur.

4. Daxili portu bağlayın

docker-compose.yml daxilində aşağıdakı hissəni dəyişin:

ports:
  - 3000:3000

bununla əvəz edin:

ports:
  - 127.0.0.1:3000:3000

Bu, 3000 portuna internetdən birbaşa girişin qarşısını alır.

5. Konteynerləri başladın

cd /opt/karakeep
docker compose up -d
docker compose ps

web, chromemeilisearch xidmətləri işlək olmalıdır. Jurnallara baxmaq üçün:

docker compose logs --tail=200

6. HTTPS-i aktivləşdirin

apt install -y caddy

cat > /etc/caddy/Caddyfile <<'EOF'
keep.example.com {
    reverse_proxy 127.0.0.1:3000
}
EOF

caddy validate --config /etc/caddy/Caddyfile
systemctl reload caddy

DNS sazlanıbsa və 80 və 443 portları açıqdırsa, Caddy TLS sertifikatını avtomatik alacaq. Sonra https://keep.example.com. Bu ünvanı açın.

7. Administrator yaradın və qeydiyyatı bağlayın

İlk qeydiyyatdan keçən istifadəçi avtomatik olaraq administrator olur. Hesab yaratdıqdan sonra .env daxilində aşağıdakı sətri göstərin:

DISABLE_SIGNUPS=true

Dəyişikliyi tətbiq edin:

cd /opt/karakeep
docker compose up -d

Administrator yenə də digər hesabları əl ilə yarada biləcək.

Məlumatların, əlavələrin və mobil tətbiqlərin idxalı

Karakeep Chrome, Firefox və Safari üçün əlavələr, həmçinin iOS və Android üçün tətbiqlər təqdim edir. Telefonda keçidi sistemin Paylaş menyusu vasitəsilə arxivə göndərmək olar.

Mövcud əlfəcinləri standart brauzer HTML faylından, Pocket-dən, Omnivore-dan və digər dəstəklənən xidmətlərdən idxal etmək mümkündür. Böyük arxivi hissə-hissə əlavə etmək daha yaxşıdır: server səhifələri açmalı, mətni çıxarmalı, ekran görüntüləri yaratmalı və axtarış indeksini qurmalıdır.

AI-ni və tam səhifə arxivləşdirməsini necə aktivləşdirməli?

OpenAI üçün .env faylına aşağıdakı sətri əlavə edin:

OPENAI_API_KEY=YOUR_API_KEY

OpenAI-uyğun başqa xidmət əlavə olaraq OPENAI_BASE_URL tələb edə bilər. Lokal model üçün konteynerdən əlçatan ünvanla OLLAMA_BASE_URL istifadə edin.

Səhifənin tam lokal nüsxəsini ayrıca aktivləşdirin:

CRAWLER_FULL_PAGE_ARCHIVE=true

CRAWLER_FULL_PAGE_SCREENSHOT=trueCRAWLER_STORE_PDF=true seçimləri də mövcuddur. Zərurət olmadıqca bütün rejimləri aktivləşdirməyin: onlar disk istifadəsini nəzərəçarpacaq dərəcədə artırır. .env dəyişdikdən sonra docker compose up -d əmrini icra edin.

Təhlükəsizlik, yeniləmələr və ehtiyat nüsxələri

Karakeep crawler-i serverinizin şəbəkəsindən istifadəçi tərəfindən yadda saxlanılmış ünvanları açır. Buna görə qeydiyyatı açıq saxlamayın və yalnız etibar etdiyiniz şəxslərə giriş verin. Əsas SSRF müdafiəsi mövcuddur, lakin ictimai xidmət üçün rəsmi layihə brauzeri təcrid etməyi və ya onu məhdudlaşdırılmış proksi üzərindən yönləndirməyi tövsiyə edir.

Həmçinin HTTPS-dən və güclü parollardan istifadə edin, 3000 portunu açıq saxlamayın və konteynerləri müntəzəm yeniləyin:

cd /opt/karakeep
docker compose up --pull always -d

Əsas verilənlər bazası və saxlanılan materiallar data adlı Docker volume-da yerləşir. Onu köçürməzdən əvvəl konteynerləri dayandırın:

mkdir -p /var/backups/karakeep
cd /opt/karakeep
docker compose stop

docker run --rm \
  -v karakeep_data:/source:ro \
  -v /var/backups/karakeep:/backup \
  alpine sh -c 'tar czf /backup/data-$(date +%F).tar.gz -C /source .'

cp .env docker-compose.yml /var/backups/karakeep/
docker compose start

karakeep_data adı layihə qovluğunun /opt/karakeep olduğunu nəzərdə tutur; bunu docker volume ls əmri ilə yoxlaya bilərsiniz. Meilisearch indeksi yenidən qurula bilər, lakin böyük kitabxana üçün karakeep_meilisearch volume-unu da ehtiyat nüsxələmək faydalıdır.

Arxivi /var/backups/karakeep qovluğundan başqa serverə, NAS-a və ya obyekt yaddaşına göndərin. Eyni VPS-dəki nüsxə disk nasazlığından və ya virtual maşının silinməsindən qorumur.

Karakeep üçün hansı VPS-i seçməli?

Ollama olmadan şəxsi kitabxana üçün 2 vCPU, 2 GB RAM və 20–30 GB NVMe olan Linux VPS uyğundur. Böyük idxal, bir neçə istifadəçi və tam arxivləşdirmə üçün 4 GB RAM və daha böyük disk seçin.

Karakeep-i tropic.host VPS-ində işlətmək olar: daimi IP ünvanı domen sazlamasını asanlaşdırır, NVMe yaddaşı isə SQLite, axtarış indeksi və çoxlu kiçik fayl üçün faydalıdır. Arxiv böyüdükcə resursları artıra bilərsiniz.

Lokal Ollama üçün resursları ayrıca planlaşdırın: hətta kiçik dil modeli də bütün əsas Karakeep stekindən daha çox yaddaş tələb edə bilər.

Nəticə

Karakeep səpələnmiş keçidləri şəxsi, axtarıla bilən kitabxanaya çevirir. O, səhifələri, qeydləri, şəkilləri və PDF-ləri saxlayır, OCR, siyahılar, əlavələr, mobil tətbiqlər və könüllü AI teqləməsini dəstəkləyir.

Başlamaq üçün kiçik VPS, Docker Compose, domen və HTTPS kifayətdir. Quraşdırmadan sonra qeydiyyatı bağlayın, disk istifadəsini izləyin və xarici ehtiyat nüsxəsi saxlayın.

FAQ

Karakeep pulsuzdur?

Öz serverinizdə yerləşdirilən versiya açıq mənbəlidir və məcburi abunəlik tələb etmir. VPS, domen, ehtiyat yaddaşı və lazım olduqda xarici AI API üçün ödəniş edirsiniz.

Karakeep-in işləməsi üçün API açarı lazımdır?

Xeyr. Materialların yadda saxlanması və indekslənməsi, siyahılar, qeydlər, OCR və tam mətn üzrə axtarış AI olmadan işləyir. Avtomatik teqlər, xülasələr və əlaqəli imkanlar üçün model lazımdır.

Karakeep nə qədər RAM tələb edir?

Ollama olmadan bir istifadəçi üçün praktik başlanğıc 2 GB RAM-dir. Böyük idxal, bir neçə istifadəçi və aktiv emal üçün 4 GB daha rahatdır.

Brauzerdən və ya Pocket-dən əlfəcinləri idxal edə bilərəm?

Bəli. Karakeep standart brauzer əlfəcin HTML faylını, Pocket-i, Omnivore-u və bir sıra digər formatları dəstəkləyir. İdxaldan sonra Karakeep səhifələri emal edir və onları axtarışa əlavə edir.

İlkin veb-sayt yoxa çıxsa, məqalə əlçatan qalacaq?

Karakeep çıxarılmış mətni və ekran görüntüsünü, tam arxivləşdirmə aktiv olduqda isə lokal nüsxəni və ya PDF-i saxlayır. Autentifikasiya arxasındakı səhifələr və mürəkkəb veb tətbiqləri yalnız qismən saxlanıla bilər.