Главная >> Списки >> Полезные программы для домашнего сервера в 2025

Полезные программы для домашнего сервера в 2025

Помимо программ с графическим и текстовым интерфейсом в последнее время набирают популярность программы с веб-интерфейсом, которые можно разместить на собственном сервере в облаке или в локальной сети и использовать с нескольких устройств. Это называется self-hosting.

Речь идет не только о серьезных программах для мониторинга серверов, обработки логов и т.д., но и часто о решениях для более простых повседневных задач, например, хранения и чтения книг, заметок, стриминга фильмов или музыки, и даже поиска мемов. В этой статье собрано 10 полезных программ для домашнего сервера с веб-интерфейсом, которые вы можете установить и использовать.


Содержание статьи

Зачем это вообще нужно?

Для решения большинства задач достаточно программ, которые запускаются на одном компьютере и имеют графический интерфейс или интерфейс командной строки. Однако программы, запущенные на отдельном сервере, имеют несколько преимуществ:

  • Доступ с нескольких устройств - вы можете получить доступ к вашим данным независимо от используемого устройства: на компьютере, телефоне, ноутбуке. У многих таких программ есть даже приложения для Android и iOS.
  • Непрерывная работа - программы на компьютере работают только когда компьютер включен. В то же время, если у вас есть сервер на Raspberry Pi с низким энергопотреблением, то запущенные программы с веб-интерфейсом могут выполнять работу в фоновом режиме 24/7.
  • Легко переносить данные - время от времени операционную систему на компьютере нужно переустанавливать, в случае с Linux, например, для перехода на другой дистрибутив или обновления версии, и тогда вам нужно перенести все данные и программы в новую систему. В случае с сервером, вы можете не переустанавливать систему достаточно долго. Можно установить NixOS, а сами программы запускать в контейнерах Docker, которые при необходимости будет просто перенести в другую систему, где поддерживается Docker.
  • Тренировка навыков работы с инфраструктурой - помимо всего вышеперечисленного, вы получаете почти production сервер, который так или иначе нужно обслуживать. Вы можете разбираться с новыми технологиями, исследовать как всё работает или как лучше реализовать ту или иную конфигурацию, и тому подобное.

Как это делать?

Конечно, всё это можно запускать и на компьютере, которым вы пользуетесь, но тогда это немного теряет смысл. Лучше для этого использовать старый ноутбук, миникомпьютер или Raspberry Pi. Третьей версии Raspberry Pi может быть недостаточно, но 4-я и 5-я с 8 Гб оперативной памяти будут вполне справляться.

В качестве операционной системы может быть любой серверный Linux дистрибутив. Неплохой выбор - NixOS. Система сложна в настройке, но затем конфигурацию будет очень просто воспроизвести на другом устройстве или после обновления. А сами программы удобнее всего запускать в контейнерах. Это безопаснее, а также настроенные с помощью docker compose контейнеры можно очень просто развернуть где угодно, где поддерживается docker.

Все перечисленные в этом списке программы можно установить с помощью Docker Compose, поэтому это не должно быть проблемой. По каждой программе будет приведен простой пример конфигурации docker compose, которая не является готовой к повседневному использованию, но позволяет посмотреть как работает программа.

Лучше не давать доступ ко всему этому из интернета без дополнительной авторизации. Программное обеспечение, в том числе с веб-интерфейсом, может содержать ошибки и уязвимости, которые могут привести к заражению вашего сервера вирусами и утечке данных.

Полезные программы для домашнего сервера

В этой статье не будет программ для мониторинга состояния серверов и тому подобного. Сосредоточимся на программах, которые можно использовать для решения повседневных задач и повышения удобства использования системы. С помощью таких программ вы можете создать свой аналог экосистемы Apple или Google в локальной сети.

1. NextCloud

  • Технологии: PHP/Symfony, Javascript/Vue
  • Количество звёзд: 33к
  • Минимальный объем RAM: 4 Гб
  • Требования к процессору: x64/arm64

NextCloud можно считать альтернативой Google Cloud. С помощью программы вы можете настроить синхронизацию файлов с телефона и компьютера. А с помощью расширений, которые здесь называются приложениями, можно улучшить удобство работы с этими файлами, настроить дополнительные синхронизации или автоматизации. Фактически это облачное хранилище с веб-интерфейсом и поддержкой плагинов. В отличие от Google Drive, объем хранилища ограничен только размером HDD или SSD, который вы туда установите, а варианты использования - вашей способностью настраивать и воображением. На сайте уже есть статья о том, как настроить NextCloud.

Большинство программ, перечисленных ниже, тоже своего рода облачные хранилища, но они более специфичны и имеют дополнительные функции для работы с определенным типом файлов, такими как музыка, фильмы, документы или книги.

services: nextcloud: image: lscr.io/linuxserver/nextcloud:latest container_name: nextcloud environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC volumes: - ./config:/config - ./data:/data ports: - 443:443 restart: unless-stopped

2. Navidrome

  • Технологии: Go, JavaScript
  • Количество звёзд: 18k
  • Минимальный объем RAM: 1 Гб
  • Требования к процессору: x86 32/64bit или ARM

Это медиа-стриминг платформа, которую можно разместить на собственном сервере. Обычно она используется для музыки. Здесь поддерживается множество медиа форматов, музыку можно организовывать по исполнителям, альбомам, плейлистам. Прослушивать музыку можно через веб-интерфейс, или с помощью любого клиента, поддерживающего Subsonic API, например с помощью Android приложения DSub2000.

services: navidrome: image: deluan/navidrome:latest user: 1000:1000 ports: - "4533:4533" restart: unless-stopped volumes: - ./data:/data - ./music:/music:ro

3. Kavita

  • Технологии: C#, TypeScript
  • Количество звёзд: 9k
  • Минимальный объём RAM: 512 Мб
  • Требования к процессору: x64/arm64, с поддержкой SSE4.2

Kavita - это альтернатива Kindle, которую можно развернуть на собственном сервере, чтобы читать книги, купленные не в Amazon, в форматах PDF, EPUB и других, с тем же удобством, что и в Kindle. Вы предоставляете программе доступ к каталогу с книгами, программа сканирует их в библиотеку, после чего вы можете читать эти книги через веб-интерфейс. У программы пока нет официального клиента для мобильных телефонов, но поскольку у неё есть веб-интерфейс, открыть его можно с любого устройства.

services: kavita: image: lscr.io/linuxserver/kavita:latest container_name: kavita environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC volumes: - ./config:/config - ./data:/data ports: - 5000:5000 restart: unless-stopped

4. Jellyfin

  • Технологии: C#, JavaScript
  • Количество звёзд: 47k
  • Минимальное количество RAM: 8 Гб
  • Требования к процессору: Intel Core i5-11400, Intel Pentium Gold G7400, Intel N100, Apple M или новее

Jellyfin - медиасистема, разработанная на .NET, с помощью которой можно стримить свои видео и аудио файлы на другие устройства или просматривать их в веб-интерфейсе. Аналогично Kavita, здесь необходимо указать папку, в которой находятся медиафайлы. Помимо просмотра видео, программа загружает метаданные для ваших файлов, а также поддерживает перекодирование форматов. Также доступны клиенты для различных платформ, включая Linux, Windows, Android и iOS.

services: jellyfin: image: lscr.io/linuxserver/jellyfin:latest container_name: jellyfin environment: - PUID=1000 - PGID=1000 - TZ=Etc/UTC volumes: - ./config:/config - ./tvseries:/data/tvshows - ./movies:/data/movies ports: - 8096:8096 - 8920:8920 - 7359:7359/udp - 1900:1900/udp restart: unless-stopped

5. Storyteller Reader

  • Технологии: NodeJS/React
  • Количество звезд: 100
  • Минимальный объем RAM: 8 Гб
  • Требования к процессору: Intel/AMD или ARM64

Storyteller - это облачное хранилище для аудиокниг, которое вы можете разместить на своем сервере. Программа состоит из серверной части, где хранятся файлы книг, а также мобильного приложения, с помощью которого эти книги можно сохранить на телефон и слушать.

Программа достаточно новая и не очень популярная, но у нее есть одна очень полезная особенность. Если у вас есть аудио версия книги и ее электронная текстовая версия, то программа позволяет их объединить и слушать аудио параллельно читая текст, что довольно удобно при изучении нового языка. Для этого аудио распознается с помощью Whisper и сопоставляется с текстом, поэтому программе требуется много оперативной памяти. Конечно, программа запоминает позицию, где вы остановились, и имеет режим сна и настройки скорости воспроизведения.

services: web: image: registry.gitlab.com/storyteller-platform/storyteller:latest volumes: - ./data:/data:rw environment: - STORYTELLER_SECRET_KEY=changemechangemechangeme ports: - "8001:8001"

6. Paperless-NGX

  • Технологии: Python, TypeScript
  • Количество звёзд: 35k
  • Минимальный объем RAM: 2 Гб
  • Требования к процессору: x64 или ARM64.

Программа позволяет хранить и организовывать документы, её особенность - это поддержка распознавания текста на документах с помощью Tesseract. Вы загружаете документ, а программа индексирует его содержимое, позволяя затем очень быстро и просто находить нужные документы. Вся обработка происходит локально. Кроме того документам можно присваивать теги, а также организовать их по папкам. Поддерживаются PDF, изображения, текстовые файлы и множество форматов офисных программ.

services: paperless-ngx: image: lscr.io/linuxserver/paperless-ngx:latest container_name: paperless-ngx environment: - PUID=1000 - PGID=1000 - TZ=America/New_York volumes: - ./config:/config - ./data:/data ports: - 8000:8000 restart: unless-stopped

7. KaraKeep

  • Технологии: TypeScript
  • Количество звёзд: 22k
  • Минимальный объем RAM: 2 Гб
  • Процессор: x64 или ARM64

Эта программа может помочь наконец-то закрыть ваши 100+ вкладок в браузере, поскольку это менеджер закладок с поддержкой AI функций. Программа стала популярной недавно и раньше называлась Hoarder. Она имеет расширения для браузеров (Chrome/Firefox), с помощью которых можно отправить ссылку на любую страницу в закладки, которые затем можно просматривать в веб-интерфейсе программы или в мобильном приложении.

Всем материалам присваиваются теги с помощью AI, а также поддерживается полнотекстовый поиск. Доступ для AI здесь нужно настраивать. По умолчанию используется OpenAI, но поддерживается также Ollama, а также все OpenAI совместимые провайдеры.

services: web: image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-release} restart: unless-stopped volumes: - ./data:/data ports: - 3000:3000 environment: - KARAKEEP_VERSION=release - NEXTAUTH_SECRET=super_random_string - NEXTAUTH_URL=http://localhost:3000 - MEILI_ADDR=http://meilisearch:7700 - BROWSER_WEB_URL=http://chrome:9222 - OPENAI_API_KEY=changeme_changeme_changeme - OPENAI_BASE_URL=https://api.groq.com/openai/v1/ - INFERENCE_TEXT_MODEL=openai/gpt-oss-120b - INFERENCE_IMAGE_MODEL=meta-llama/llama-guard-4-12b - DATA_DIR=/data chrome: image: gcr.io/zenika-hub/alpine-chrome:124 restart: unless-stopped command: - --no-sandbox - --disable-gpu - --disable-dev-shm-usage - --remote-debugging-address=0.0.0.0 - --remote-debugging-port=9222 - --hide-scrollbars meilisearch: image: getmeili/meilisearch:v1.13.3 restart: unless-stopped environment: - MEILI_NO_ANALYTICS=true - MEILI_MASTER_KEY=another_random_string volumes: - ./meilisearch:/meili_data

8. Warracker

  • Технологии: Python, JavaScript
  • Количество звезд: 1k
  • Минимальный объем RAM: 250 Мб
  • Процессор: x86-64/AMD64 или ARM64

Этот сервис позволяет хранить и отслеживать гарантии для вашего оборудования. Очень просто, но весьма полезно, когда что-то выходит из строя, иметь возможность быстро посмотреть, где оно было приобретено и не закончилась ли еще гарантия. Кроме того, в программе можно хранить дополнительные заметки о товарах и различную документацию для них в PDF формате.

services: warracker: image: ghcr.io/sassanix/warracker/main:latest ports: - "8005:80" volumes: - ./data/uploads:/data/uploads environment: - DB_HOST=warrackerdb - DB_PORT=${DB_PORT:-5432} - DB_NAME=warranty_db - DB_USER=warranty_user - DB_PASSWORD=${DB_PASSWORD:-warranty_password} - SMTP_HOST=smtp.email.com - SMTP_PORT=465 - SMTP_USERNAME=youremail@email.com - SMTP_PASSWORD=password - SECRET_KEY=${APP_SECRET_KEY:-your_strong_default_secret_key_here} - MAX_UPLOAD_MB=32 - NGINX_MAX_BODY_SIZE_VALUE=32M - OIDC_PROVIDER_NAME=${OIDC_PROVIDER_NAME:-oidc} - OIDC_CLIENT_ID=${OIDC_CLIENT_ID:-} - OIDC_CLIENT_SECRET=${OIDC_CLIENT_SECRET:-} - OIDC_ISSUER_URL=${OIDC_ISSUER_URL:-} - OIDC_SCOPE=${OIDC_SCOPE:-openid email profile} - FRONTEND_URL=${FRONTEND_URL:-http://localhost:8005} - APP_BASE_URL=${APP_BASE_URL:-http://localhost:8005} - WARRACKER_MEMORY_MODE=${WARRACKER_MEMORY_MODE:-optimized} - PYTHONUNBUFFERED=1 depends_on: warrackerdb: condition: service_healthy restart: unless-stopped warrackerdb: image: postgres:15-alpine volumes: - ./data/postgres:/var/lib/postgresql/data restart: unless-stopped environment: - POSTGRES_DB=warranty_db - POSTGRES_USER=warranty_user - POSTGRES_PASSWORD=${DB_PASSWORD:-warranty_password} healthcheck: test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"] interval: 5s timeout: 5s retries: 5

9. MemeSearch

  • Технологии: Ruby/Python, JavaScript
  • Количество звёзд: 600
  • Объём RAM: 8-16 Гб
  • Процессор: x86-64/AMD64

Мемы уже стали частью нашей культуры, и было бы неплохо иметь возможность сохранять и находить мемы, когда это необходимо. Программа индексирует мемы, распознавая что на них изображено и текст с помощью AI. Это позволяет выполнять поиск по описанию мема или по словам из него. Вся обработка выполняется локально. С кириллицей программа работает не очень хорошо, но мемы на английском распознаются неплохо.

services: meme_search: image: ghcr.io/neonwatty/meme_search:latest container_name: meme_search environment: DATABASE_URL: "postgres://postgres:postgres@meme-search-db:5432/meme_search" ports: - "${APP_PORT:-3000}:3000" depends_on: meme_search_db: condition: service_healthy volumes: - ./data/memes/:/rails/public/memes - ./data/direct-uploads/:/rails/public/memes/direct-uploads extra_hosts: huggingface.co: 108.138.51.8 image_to_text_generator: image: ghcr.io/neonwatty/image_to_text_generator:latest container_name: image_to_text_generator environment: APP_PORT: "${APP_PORT:-3000}" GEN_URL: "http://meme_search:3000" expose: - "8000" volumes: - ./data/memes/:/app/public/memes - ./data/direct-uploads/:/app/public/memes/direct-uploads - ./data/db_data/image_to_text_generator:/app/db - ./data/models:/root/.cache/huggingface meme_search_db: image: pgvector/pgvector:pg17 container_name: meme-search-db volumes: - ./data/db_data/meme-search-db:/var/lib/postgresql/data environment: POSTGRES_DB: meme_search POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres expose: - "5432" healthcheck: test: ["CMD-SHELL", "pg_isready -U postgres"] interval: 10s timeout: 5s retries: 5

10. BentoPDF

  • Технологии: JavaScript
  • Количество звёзд: 8k
  • Объем RAM: -
  • Процессор: -

Это простой инструмент для обработки PDF файлов в браузере. Здесь можно конвертировать изображения в PDF, организовывать, обрезать и поворачивать страницы в документе, разделять или объединять страницы, добавлять аннотации и комментарии, и многое другое. Возможно не полноценная замена Adobe Acrobat, но может справиться с базовыми задачами. Поскольку программа работает в браузере, её можно запустить на любом современном железе.

services: bentopdf: image: bentopdf/bentopdf:latest container_name: bentopdf restart: unless-stopped ports: - '8080:8080'

Выводы

В этой статье мы рассмотрели полезные программы с веб-интерфейсом, которые вы можете установить на свой сервер и иметь доступ к ним удаленно. Конечно, это далеко не все программы, есть еще много менее популярных программ, или популярных, которые я не успел протестировать. Кроме того, есть программы группы arr. А что используете вы? Напишите в комментариях!

Pеклама
Посмотреть детали

Preply - платформа, позволяющая найти репетитора, который поможет вам заговорить на новом языке. На платформе есть репетиторы со всего мира для английского, немецкого, французского и многих других языков. Особенность платформы в том, что у каждого преподавателя есть видео-превью, где вы можете услышать его произношение и акцент, чтобы понять, будет ли вам комфортно работать вместе. Посмотреть детали

Оставьте комментарий