Установка Paperless в Debian

Paperless — это приложение, написанное на Python, которое принимает отсканированные документы, индексирует их и представляет в удобном веб-интерфейсе. В этой статье мы установим Paperless с обратным прокси-сервером Nginx HTTPS в Debian.

Проверено на:

  • Debian 11

Шаг 1. Устанавливаем зависимости.

Первым делом обновляемся

Для работы paperless необходимы следующие компаненты, которые можно установить следующим образом:

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

Вы можете просмотреть все доступные пакеты tesseract, используя следующую команду:

Если вы не уверены, какой трехбуквенный код соответствует желаемому языку, обратитесь к этому списку кодов ISO 639-2.

Шаг 2. Установка Redis.

Redis необходим для обработки запланированных задач, таких как получение электронной почты, оптимизация индекса и обучение автоматического сопоставления документов.

Для его установки воспользуйтесь следующей командой:

После установки включить запуск redis при загрузке системы

Шаг 3. Создаем пользователя.

Несмотря на то, что paperless можно запустить от имени пользователя root, настоятельно рекомендуется использовать пользователя с более низкими привилегиями и отключенным входом в систему. Для этого и создаем пользователя и группу с именем paperless:

Шаг 4. Установка paperless

Скачиваем архив с репозитория paperless следующей командой

На момент написания статьи это была версия 2.11.3. Актуальную версию всегда можно уточнить на следующей странице: https://github.com/paperless-ngx/paperless-ngx/releases.

И распаковываем этот архив в каталог paperless

Предоставьте пользователю paperless права на все файлы из архива:

Шаг 5. Конфигурирование paperless.

Теперь отредактируем конфигурационный файл /opt/paperless/paperless.conf. Для этого откроем его в любом удобном редакторе и отредактируем необходимые параметры.

Укажем путь к нашему Redis серверу

Установим каталог, из которого Paperless будет получать отсканированные документы, а так же, где будут храниться все данные и обработанные документы. Здесь можно указать один и тот же каталог, но потом разобраться что где находится, будет сложно. Так что рекомендую все же указывать разные каталоги:

В следующей строке, указывается ключ для создания токенов сеанса. Раскомментируйте (удалив символ #) и измените значения на безопасные, особенно, если сервер будет иметь доступ в интернет:

Если вы используете reverse прокси, то это необходимо указать в следующем параметре

Это необходимый минимум для начала работы приложения. В конфигурационном файле paperless используется много различных параметров, с их описанием вы можете ознакомится на официальном сайте приложения по адресу: https://docs.paperless-ngx.com/configuration/

Сохраняем изменения и выходим из текстового редактора.

Шаг 6. Создаем каталоги для данных.

Для хранения данных, на предыдущем шаге, мы указали каталоги: paper_in, data, media. Для того, чтобы paperless мог пользоваться этими каталогами, необходимо их создать:

И, если это необходимо, сменить права на эти каталоги

Шаг 7. Установка python зависимостей.

В каталоге, куда мы распаковали наше приложение имеется файл «requirements.txt». Для того, чтобы установить все эти зависимости в домашний каталог нашего приложения, воспользуемся следующей командой:

Шаг 8. Установка базы данных.

Создадим базу данных следующей командой:

А также нам нужен пользователь, который создается следующей командой:

Шаг 9. Создание сервиса paperless.

Теперь создадим юнит systemd для того, чтобы можно было управлять paperless. Создаем файл от имени root удобным для вас редактором:

И вносим в него следующее содержимое:

Затем создадим еще один юнит для консумера

Со следующим содержанием:

Теперь запустим наши сервисы:

Результат.

Все что касается настройки paperless сделано. Выполнив все шаги, мы получаем на 8000 порту, работающее приложение. Давайте зайдем на наш сервер и посмотрим, что же там. Вводим в адресную строку браузера ip нашего сервера:8000

И попадаем на страницу авторизации paperless. Вот и все, можно работать с ним. А еще можно настроить nginx как reverse прокси и ходить к нему по имени из глобальной сети, но это уже совсем другая история, а на этом пока все.

Was this helpful?

0 / 0

Добавить комментарий 0