Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Self-hosting Paperless-ngx on k3s with GitOps

说明与用途

Paperless‑ngx 在 Beelink mini PC 上运行 k3s,使用外部 HDD 存储文档,配置通过 Flux 管理,移动设备扫描通过社区应用完成。

问题

Need a local document archive that OCRs, tags, and stores scans from a phone without relying on cloud services.

结果

Paperless-ngx successfully runs on a single Beelink mini PC, storing documents on an external HDD, with automated deployment via Flux and mobile scanning via community apps.

工作流

  • Format external HDD as ext4 and mount it by UUID
  • Create /mnt/hdd/paperless/media and export folders and set ownership
  • Configure k3s to wait for mount via systemd unit
  • Define StorageClass hdd-local with no provisioner
  • Create PersistentVolume for media folder with nodeAffinity
  • Bind PVC to PV using storageClassName and volumeName
  • Deploy Paperless-ngx stack with PostgreSQL, Redis, Tika, Gotenberg
  • Configure Traefik ingress and nip.io hostname
  • Set PAPERLESS_URL and PAPERLESS_CSRF_TRUSTED_ORIGINS
  • Enable Flux to sync manifests from GitHub
  • Apply day‑to‑day settings via SOPS‑encrypted secrets

证据

I ended up with Paperless-ngx running on k3s on a Beelink mini PC. Documents live on an external HDD, and Flux deploys every config change I push to GitHub.

来源

The trick is a static local PersistentVolume pointing at a folder on the HDD.

来源

Paperless crash‑looping: 'tcp://10.43.x.x:8000' is not a valid integer

来源

  • 记录日期: 2026-10-26T11:26:13.476Z