Karakeepv0.32.0
Своя «сохранялка всего» на вашем сервере: ссылки, заметки и картинки с архивом страниц (снимок + текст), авто-тегами через ИИ и полнотекстовым поиском. Приватная замена Pocket и Raindrop. Бывший Hoarder. Лицензия AGPL-3.0.
Karakeep (бывший Hoarder) - это личная «сохранялка всего» на вашем сервере. Кидаете ссылку, заметку или картинку - приложение скачивает страницу, делает ее снимок через headless Chrome и извлекает текст. Контент остается у вас, даже если оригинал потом удалят или сайт закроется. Обычные закладки хранят только адрес - Karakeep хранит саму страницу.
Сверху - авто-расстановка тегов через ИИ (опционально) и полнотекстовый поиск по всему сохраненному, включая текст внутри заархивированных страниц. Это self-host замена Pocket, Raindrop и mymind: данные на вашем сервере, без подписки за место.
После создания сервера Karakeep ставится автоматически: docker поднимает стек, а Caddy выпускает Let's Encrypt и открывает доступ по HTTPS на magic-DNS домене.
Что внутри
- Karakeep (Next.js)
- приложение, веб-интерфейс, браузер-расширение и мобильные приложения подключаются к нему.
- headless Chrome
- открывает ссылку, снимает страницу и вытягивает текст для архива.
- Meilisearch
- полнотекстовый поиск по содержимому.
- SQLite
- основное хранилище (отдельная СУБД не нужна).
- Caddy
- reverse-proxy и авто-TLS (Let's Encrypt).
Безопасность
- Регистрация под контролемпервый созданный аккаунт становится владельцем. Зарегистрируйтесь сразу после запуска, затем закройте открытую регистрацию (
DISABLE_SIGNUPS=true). - fail2banбанит IP после серии неудачных попыток входа по SSH.
- HTTPS + security-заголовкиLet's Encrypt (авто-продление), HSTS, X-Content-Type-Options, Referrer-Policy. Приложение слушает только localhost, наружу - через Caddy.
Как войти
Адрес формируется из IP сервера: замените точки на дефисы и добавьте
.fatmetal.net. Пример: IP45.15.159.10->https://45-15-159-10.fatmetal.net/.Откройте адрес и сразу зарегистрируйте свой аккаунт (email + пароль). Первый аккаунт - владелец, сделайте это, пока адрес знаете только вы.
Чтобы больше никто не мог зарегистрироваться, добавьте
DISABLE_SIGNUPS=trueв/opt/karakeep/.envи выполнитеdocker compose up -d.
ИИ-теги
Авто-расстановка тегов через ИИ - опция, не обязательна. Ядро (сохранение, архив страниц, поиск) работает без всякой модели, гео-блок LLM ему не помеха. Чтобы включить теги, добавьте OPENAI_API_KEY (или адрес локального Ollama) в /opt/karakeep/.env и перезапустите стек.
Важно
Chrome-контейнер архивирует страницы и на тяжелых сайтах ест RAM - держите запас памяти (комфортно 4 ГБ и выше). Данные лежат в двух томах docker: data (закладки, архив, SQLite) и meilisearch (поисковый индекс) - бэкапьте оба. Порт приложения наружу не публикуется, доступ только через Caddy с TLS.
Лицензия
Karakeep - открытый код под лицензией AGPL-3.0.
Свой домен
Наведите CNAME на этот сервер, впишите домен в /opt/Caddyfile и в NEXTAUTH_URL (/opt/karakeep/.env), затем перезапустите Caddy и web - Caddy выпустит Let's Encrypt для вашего домена. NEXTAUTH_URL обязательно должен совпадать с публичным адресом, иначе вход ломается.
Требования
Ubuntu 24.04, открытые порты 80/443. Минимум 2 ГБ RAM, оптимум 4 ГБ и 2 ядра (архиватор прожорлив). Образы весят около 3.65 ГБ - берите диск с запасом. В простое стек занимает около 0.72 ГБ.