Рефакторизация структуры кода для улучшения читаемости и удобства сопровождения.

This commit is contained in:
2026-04-30 07:41:41 +03:00
parent eec534760e
commit 89b17ea2b2
1406 changed files with 38483 additions and 3 deletions
View File
View File
View File
View File
+53
View File
@@ -0,0 +1,53 @@
manifestVersion: 1
id: paperless
category: files
name: Paperless-ngx
version: "2.20.15"
tagline: Превратите свои физические документы в онлайн-архив с возможностью поиска.
description: >-
Paperless-ngx — это поддерживаемая сообществом система управления документами с открытым исходным кодом, которая преобразует ваши физические документы в онлайн-архив с возможностью поиска, чтобы вы могли хранить меньше бумаги.
- Организуйте и индексируйте отсканированные документы с помощью тегов, корреспондентов, типов и т. д.
- Ваши данные хранятся локально на вашем сервере и никогда не передаются и не передаются каким-либо образом.
- Выполняет распознавание документов в документах, добавляя текст с возможностью поиска и выбора, даже в документы, отсканированные только с изображениями.
- Использует движок Tesseract с открытым исходным кодом для распознавания более 100 языков.
- Документы сохраняются в формате PDF/A, который предназначен для длительного хранения вместе с неизмененными оригиналами.
- Использует машинное обучение для автоматического добавления тегов, корреспондентов и типов документов в ваши документы.
- Поддерживает документы PDF, изображения, текстовые файлы, документы Office (эквиваленты Word, Excel, Powerpoint и LibreOffice)1 и многое другое.
- Безбумажный формат хранит ваши документы на диске. Имена файлов и папок управляются безбумажным способом, и их формат можно свободно настраивать, присваивая разные конфигурации различным документам.
releaseNotes: >-
⚠️ В этом выпуске устранена проблема безопасности, и его рекомендуется использовать всем пользователям.
Исправления ошибок в этом выпуске:
- Исправлен вход и выход из системы для использования только безопасных конечных точек.
- Исправлено неправильное определение области перечисления почтовых учетных записей.
- Исправлено промежуточное событие изменения, когда оператор запроса настраиваемого поля меняет тип.
- Исправлены недопустимые запросы, принимаемые конечной точкой заметок API.
Полные примечания к выпуску можно найти по адресу https://github.com/paperless-ngx/paperless-ngx/releases.
backupIgnore:
- data/redisdata/*
developer: Paperless-ngx Community
website: https://docs.paperless-ngx.com/
dependencies: []
repo: https://github.com/paperless-ngx/paperless-ngx
support: https://github.com/paperless-ngx/paperless-ngx/discussions
port: 2349
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
defaultUsername: "admin"
deterministicPassword: true
submitter: highghlow
submission: https://github.com/getumbrel/dfwebos-apps/pull/1047
+62
View File
@@ -0,0 +1,62 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: paperless_webserver_1
APP_PORT: 8000
PROXY_AUTH_ADD: 'false'
broker:
image: docker.io/library/redis:7@sha256:d6ecc832969a4827645a083da38345327b3447772fe907e7d4311c79b4e3a06e
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/redisdata:/data
db:
image: docker.io/library/postgres:16@sha256:46aa2ee5d664b275f05d1a963b30fff60fb422b4b594d509765c42db46d48881
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/pgdata:/var/lib/postgresql/data
environment:
POSTGRES_DB: paperless
POSTGRES_USER: paperless
POSTGRES_PASSWORD: paperless
webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:2.20.15@sha256:6c86cad803970ea782683a8e80e7403444c5bf3cf70de63b4d3c8e87500db92f
restart: on-failure
depends_on:
- db
- broker
- gotenberg
- tika
volumes:
- ${APP_DATA_DIR}/data/data:/usr/src/paperless/data
- ${APP_DATA_DIR}/data/media:/usr/src/paperless/media
# TODO: move these inside the paperless app data dir once DFWebOS supports navigating to it via the UI
- ${DFWEBOS_ROOT}/data/storage/paperless/export:/usr/src/paperless/export
- ${DFWEBOS_ROOT}/data/storage/paperless/consume:/usr/src/paperless/consume
environment:
PAPERLESS_REDIS: redis://paperless_broker_1:6379
PAPERLESS_DBHOST: paperless_db_1
PAPERLESS_TIKA_ENABLED: 1
PAPERLESS_TIKA_GOTENBERG_ENDPOINT: http://paperless_gotenberg_1:3000
PAPERLESS_TIKA_ENDPOINT: http://paperless_tika_1:9998
PAPERLESS_ADMIN_USER: admin
PAPERLESS_ADMIN_PASSWORD: $APP_PASSWORD
gotenberg:
image: docker.io/gotenberg/gotenberg:7.10@sha256:d03b8a04c6e6c5e568b38f57352266dee4674849b71818774025f8f48d869a9a
restart: on-failure
# Маршрут gotenberg chromium используется для преобразования файлов .eml. Мы не
# хотите разрешить внешний контент, например пиксели отслеживания или даже JavaScript.
command:
- "gotenberg"
- "--chromium-disable-javascript=true"
- "--chromium-allow-list=file:///tmp/.*"
tika:
image: apache/tika:3.2.3.0@sha256:c0154cb95587cde64be74f35ada1a2bd7892219f3f0ac3c9dc6cab34046b3573
restart: on-failure
+32
View File
@@ -0,0 +1,32 @@
# Убедитесь, что каталоги безбумажного потребления и экспорта созданы с правильными разрешениями.
DFWEBOS_DATA_DIR="${DFWEBOS_ROOT}/data"
DFWEBOS_DATA_STORAGE_DIR="${DFWEBOS_DATA_DIR}/storage"
DFWEBOS_DATA_STORAGE_PAPERLESS_DIR="${DFWEBOS_DATA_STORAGE_DIR}/paperless"
DFWEBOS_DATA_STORAGE_PAPERLESS_CONSUME_DIR="${DFWEBOS_DATA_STORAGE_PAPERLESS_DIR}/consume"
DFWEBOS_DATA_STORAGE_PAPERLESS_EXPORT_DIR="${DFWEBOS_DATA_STORAGE_PAPERLESS_DIR}/export"
DESIRED_OWNER="1000:1000"
if [[ ! -d "${DFWEBOS_DATA_STORAGE_PAPERLESS_CONSUME_DIR}" ]]; then
mkdir -p "${DFWEBOS_DATA_STORAGE_PAPERLESS_CONSUME_DIR}"
fi
if [[ ! -d "${DFWEBOS_DATA_STORAGE_PAPERLESS_EXPORT_DIR}" ]]; then
mkdir -p "${DFWEBOS_DATA_STORAGE_PAPERLESS_EXPORT_DIR}"
fi
set_paperless_correct_permissions() {
local -r path="${1}"
if [[ -d "${path}" ]]; then
owner=$(stat -c "%u:%g" "${path}")
if [[ "${owner}" != "${DESIRED_OWNER}" ]]; then
chown "${DESIRED_OWNER}" "${path}"
fi
fi
}
set_paperless_correct_permissions "${DFWEBOS_DATA_STORAGE_DIR}"
set_paperless_correct_permissions "${DFWEBOS_DATA_STORAGE_PAPERLESS_DIR}"
set_paperless_correct_permissions "${DFWEBOS_DATA_STORAGE_PAPERLESS_CONSUME_DIR}"
set_paperless_correct_permissions "${DFWEBOS_DATA_STORAGE_PAPERLESS_EXPORT_DIR}"