Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[Support] Paperless-ngx Docker

Featured Replies

  1794902848_Whitelogo-nobackground.thumb.png.e27c5ed05612c8a620819b3862a3a392.png

 

Overview: Dedicated support thread for the Docker template paperless-ngx provided via the selfhosters/unRAID-CA-templates repository.

Project Page: https://github.com/paperless-ngx/paperless-ngx

Demo: https://demo.paperless-ngx.com/

Documentation: https://docs.paperless-ngx.com

Registry: https://github.com/paperless-ngx/paperless-ngx/pkgs/container/paperless-ngx

Changelog: https://docs.paperless-ngx.com/changelog/

 

This is the official paperless-ngx Docker support thread. Feel free to ask questions, share your experience with paperless-ngx or describe your paperless setup at home. I try to update this main post regularly based on your feedback. From here on, I will use the terms paperless and paperless-ngx interchangeable.

 

1. What is paperless-ngx and how does it differ from paperless-ng?

Paperless-ngx forked from paperless-ng to continue the great work and distribute responsibility of supporting and advancing the project among a team of people. The paperless-ng project hasn't received a lot of updates and bug fixes in the past month. Even pull requests are not merged for some time now.

 

For now, the paperless-ng and paperless-ngx Unraid templates will coexist in the community application store. That allows existing users to still rely on the mature paperless-ng for their productive environment and make the change to paperless-ngx once they feel comfortable.

 

Consider joining us! Discussion of this transition can be found in issues #1599 and #1632.

 

2. How to Install

2. 1 New Installation

  • Download and install a Redis container from the community application store (CA)
  • Download and configure the paperless-ngx container from the CA
    • Make sure you point the container to your Redis instance. Use your actual IP and not localhost, because the reference is resolved in the container. In case you need to pass a password to Redis, use the following connection string redis://:[PASSWORD]@[IP]:6379 instead. At the moment Redis doesn't support users and only provides authentication against a global password. You can pass anything as a username, including the empty string as in my example here. To configure a password for your Redis container, set 'redis-server --requirepass "your-secret"' as post arguments on the Redis docker container. Also make sure to not use any special characters. Otherwise, the connection string might not be readable by paperless.
  • Create a user account after this container is created i.e. from Unraids Docker UI, click the paperless-ngx icon and choose Console. Then enter the command "python manage.py createsuperuser" in the prompt and follow the instructions. Alternative, set 'PAPERLESS_ADMIN_USER' and 'PAPERLESS_ADMIN_PASSWORD' in your paperless-ngx docker template (docs). With the later approach, it might be easier to find your password to sensible documents stored in paperless.

 

2.1 Migration from paperless-ng

 

Paperless-ngx is meant to be a drop-in replacement for Paperless-ng and thus upgrading should be trivial for most users, especially when using docker. However, as with any major change, it is recommended to take a full backup first!

 

 

3. My personal paperless workflow

I use the iOS app ScannerPro to scan my documents and upload them via the app to a webDAV target on my Unraid server. The webDAV target is mounted in the container as consume directory.

 

I use the pre and post hooks to execute web hooks in order to check via Home Assistant whether the processing failed for an uploaded document. Home Assistant sends then notifications about the import status to my phone. This way I can throw away the physical document without worrying about it not being imported.

 

How does your workflow look like? Feel free to share it in this thread. Here you can also find the official recommended workflow for managing your documents with paperless-ngx.

 

4. FAQ

 

4.1 Why does the consumer not pick up my files?

The consumer service uses inotify to detect new documents in the consume folder. This subsystem, however, does not support NFS shares. You can disable inotify and use a time-based polling mechanism instead (checkout the 'PAPERLESS_CONSUMER_POLLING' variable. If set to a value n greater than 0, inotify is disabled and the directory is polled every n seconds).

 

4.2 How to customize paperless-ngx?

Paperless-ngx does support much more environment variables than the Unraid template initially offers. You can find them in the documentation here. Make sure to have a proper backup before playing around with the environment variables.

 

4.3 What scanner do you use for paperless-ngx at home?

A list of scanners used by our community:

  • iPhone with ScannerPro app; one time purchase (@T0a)
  • More will be added when you share your scanner

Paperless-ngx also maintains a list of recommended scanners. Feel free opening a pull request over there to add your recommended scanner to the documentation too.

 

4.4 Can I use paperless-ngx on a mobile device?

Mobile support in paperless-ngx is also almost there. Some layouts don't work yet on small screens. There is also a mobile app in pretty early development stage. Though, it is only available in the Android store yet.

 

4.5 What is the future of the original paperless-ng template in Unraid?

At some point, I will probably remove the paperless-ng template and close its support thread.

 

4.6 How to configure PostgreSQL as a database?

See this post on how to configure PostgreSQL in the template. The official documentation gives further migration steps needed.

 

4.7 When running two instances of paperless, I cannot stay logged-in to both

 

That is because both instances share the same session identifier (cookie). Apply to one of them the environment variable PAPERLESS_COOKIE_PREFIX (documentation).

Edited by T0a
Update links

  • Replies 290
  • Views 196.1k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • I installed these 2 containers: Repository: gotenberg/gotenberg Repository: apache/tika In Paperless i added these 3 varibles: Name / Key:    PAPERLESS_TIKA_ENABLED Value:    1

  • Enter your PAPERLESS_REDIS without brackets

  • Unraid 6.11.5, Docker version status for paperless-ngx has been "not available" for around a day. I update these things routinely so it's odd. db-backup docker also in this state but only those 2 (of

Posted Images

  • Author

- Reserved -

i've never made the migration from paperless to paperless-ng

and so i'm still on the deprecated docker...

could somebody help me with the migration from paperless to paperless-ngx?

Nice work, paperless was on my list to test for some time. Yesterday I give it a try and it works nice.

 

Now I like to setup two instances of paperless, one for my private documents and one for articles and magazines I've collected. The second one should be accessible for friends, but I don't want them to see my private docs. Therefore I like to use two instances.

 

I managed to populate two docker containers (paperless-ngx-intern on port 8000 and paperless-ngx-extern on port 8001) using the same redis docker container. Both instances are working, but I am not able to stay logged in into both at the same time.

 

I've searched the forum, found nothing. I don't know if the issue is related to paperless or to redis. Is it possible to use multiple containers with one redis instance or do I need a single redis instance for every paperless container?

  • Author
On 3/15/2022 at 12:04 PM, pika said:

i've never made the migration from paperless to paperless-ng

and so i'm still on the deprecated docker...

could somebody help me with the migration from paperless to paperless-ngx?

 

Migrate from paperless to paperless-ng: https://paperless-ng.readthedocs.io/en/latest/setup.html?highlight=migrate#migration-to-paperless-ng

Migrating from paperless to paperless-ngx: https://paperless-ngx.readthedocs.io/en/latest/setup.html?highlight=migrate#migrating-from-paperless

Migrate from paperless-ng to paperless-ngx: https://paperless-ngx.readthedocs.io/en/latest/setup.html?highlight=migrate#migrating-from-paperless-ng

 

Will add those links to the first post. Please do a full backup first!

 

  • Author
On 3/16/2022 at 11:32 AM, cfranz said:

Nice work, paperless was on my list to test for some time. Yesterday I give it a try and it works nice.

 

Now I like to setup two instances of paperless, one for my private documents and one for articles and magazines I've collected. The second one should be accessible for friends, but I don't want them to see my private docs. Therefore I like to use two instances.

 

I managed to populate two docker containers (paperless-ngx-intern on port 8000 and paperless-ngx-extern on port 8001) using the same redis docker container. Both instances are working, but I am not able to stay logged in into both at the same time.

 

I've searched the forum, found nothing. I don't know if the issue is related to paperless or to redis. Is it possible to use multiple containers with one redis instance or do I need a single redis instance for every paperless container?

 

That is because both instances share the same session identifier (cookie). Apply to one of them the environment variable PAPERLESS_COOKIE_PREFIX=second. Updated the FAQ.

Edited by T0a

On 3/19/2022 at 9:25 AM, T0a said:

 

That is because both instances share the same session identifier (cookie). Apply to one of them the environment variable PAPERLESS_COOKIE_PREFIX=second. Updated the FAQ.

 

Thank you, that worked perfect!

 

I had another issue, that I solved myself. When I added documents to the consume folder (separate folder for each instance), some documents were consumed and some not. In the log all documents were added to the task queue. After configuring a separate redis container for each paperless container, everything is working fine and all documents are consumed ;)

I'm sorry, I do not understand how I can upgrade from the Unraid docker Paperless-ng to paperless-ngx using the Unraid web-Gui.

 

What do I need to do in Unraid exactly to upgrade  my working Paperless-ng docker to the Paperless-ngx docker ?

 

The above documentation link how to upgrade, is NOT explaining how to upgrade within Unraid - so a step by step explanation using the Unraid web-Gui would be very useful

I have a very large archive of documents with 10000++ documents, so I am hesitating to upgrade, without knowing and understanding exactly what I need to do. Thank you very much

 

Do I simply need to remove the docker Paperless-ng and reinstall the Docker paperless-ngx ?

What about the app-data ?

What about the links to the current database (I use postgresql)

What about parameters of the docker (old / new migration)

 

Thank you for your kind understanding.

 

P.S.:

Please DO NOT eliminate the 'old' Paperless-ng docker from the app folder in the near future. If anything will go wrong with the upgrade, the current backup will only work with the old paperless-ng docker. If that is not available any more, some thousands of working hours would be damaged, if there is no source to reinstall the old docker image any more...

 

 

On 3/20/2022 at 6:43 PM, ullibelgie said:

I'm sorry, I do not understand how I can upgrade from the Unraid docker Paperless-ng to paperless-ngx using the Unraid web-Gui.

 

What do I need to do in Unraid exactly to upgrade  my working Paperless-ng docker to the Paperless-ngx docker ?

 

The above documentation link how to upgrade, is NOT explaining how to upgrade within Unraid - so a step by step explanation using the Unraid web-Gui would be very useful

I have a very large archive of documents with 10000++ documents, so I am hesitating to upgrade, without knowing and understanding exactly what I need to do. Thank you very much

 

Do I simply need to remove the docker Paperless-ng and reinstall the Docker paperless-ngx ?

What about the app-data ?

What about the links to the current database (I use postgresql)

What about parameters of the docker (old / new migration)

The easiest way would be to simply adapt the existing paperless-ng template because you won't have to mess with any configuration:

  1. Find your paperless container in the UI.
  2. Open the configuration.
  3. Under "Repository", replace
    jonaswinkler/paperless-ng:latest

    with

    ghcr.io/paperless-ngx/paperless-ngx:latest
  4. Click "Apply".

That's it!

 

Optional:

  • Rename the container itself: In the container configuration, change the "Name" field to "paperless-ngx". It seems if you change this name you will also have to potentially re-configure the auto-start option.
  • Rename your appdata folder (while the container is stopped). After renaming the folder, make sure to mirror the name change in the container configuration field "Data" (and any other fields that reference the appdata folder).
  • Update the "Overview" field to remove references to paperless-ng and add paperless-ngx info. To do this, switch to the advanced view within the container configuration and paste the following into "Overview":
    Paperless-ngx is a document management system that transforms your physical documents into a searchable online archive so you can keep, well, less paper. Paperless-ngx forked from paperless-ng to continue the great work and distribute responsibility of supporting and advancing the project among a team of people.[br][br]
    
    Requirements: Paperless-ngx requires Redis as external service. You can install it from the CA store. Make sure to adjust the configuration in the template accordingly.
    Setup: Create a user account after this container is created i.e. from Unraids Docker UI, click the paperless-ngx icon and choose Console. Then enter "python manage.py createsuperuser" in the prompt and follow the instructions.
    Paperless-ngx Documentation: https://paperless-ngx.readthedocs.io/en/latest/
    Additional Template Variables: https://paperless-ngx.readthedocs.io/en/latest/configuration.html
    Demo: https://demo.paperless-ngx.com/

    (This is the text that the paperless-ngx template uses, you can find it here on GitHub)

  • In advanced view, change "Docker Hub URL" to

    https://github.com/paperless-ngx/paperless-ngx/pkgs/container/paperless-ngx

If you do all these optional steps, you have effectively transformed the old paperless-ng template into the new paperless-ngx template. There are two exceptions to this however: you can't update the template with links to the paperless-ngx GitHub repository or this support forum thread, both of those will still point to the respective paperless-ng resources.

 

The alternative is to pull the new template from CA but this will require you to copy over configuration with will lead to problems if you make a mistake. I haven't done this myself but the steps should be as follows:

  1. Stop the paperless-ng container.
  2. Pull the paperless-ngx template and copy over all the configuration from the old paperless-ng template 1-to-1 (including the old appdata folder name).
  3. Start the paperless-ngx container and check that everything is working as you'd expect.
  4. Remove the paperless-ng container.

Edited by jeypiti

  • 2 weeks later...

Many thanks for information, @JeyP91

- If I only follow your explaination from the beginning of your post point 1.) to 4.)  - is it possible to update the paperless-ngx, whenever there is a maintainance/functional update available - let's say from todays version 1.6.0 to 1.6.1 sometimes in the future

- will I be alerted that my current version of paperless-ngx is outdated (when I manually check for update for all dockers), so that I know I need to update paperless-ngx with the newer version

 

So what would be the possible advantage doing the optional changes you mentioned or even the alternative procedere point 1-4 from the end of your posting...

 

Another concern:

Is there a way for me to save the original paperless-ng docker, in case it is removed from the apps page.

Because the original paperless-ng docker works at the moment for me, but if I find problems with paperless-ngx and at the same time the original docker-app is removed, there is no way for me to go back the the current state using paperless-ng....

With my current large archive (tens of thousands of docs), upgrading to ngx still seems to be a risk for me, if the original docker-app will be removed soon... (as announced) - so I could not fall back to the original paperless-ng

 

Thanks for clearifing...

 

 

  • Author
On 4/1/2022 at 2:37 PM, ullibelgie said:

Many thanks for information, @JeyP91

- If I only follow your explaination from the beginning of your post point 1.) to 4.)  - is it possible to update the paperless-ngx, whenever there is a maintainance/functional update available - let's say from todays version 1.6.0 to 1.6.1 sometimes in the future

 

Maybe WatchTower will serve your needs. Personally, I don't like automatic updates for my containers as I have the urge for checking the application after an update. Keep in mind that even minor updates might break the setup.

 

On 4/1/2022 at 2:37 PM, ullibelgie said:

- will I be alerted that my current version of paperless-ngx is outdated (when I manually check for update for all dockers), so that I know I need to update paperless-ngx with the newer version

 

Maybe Diun will serve your needs.

 

On 4/1/2022 at 2:37 PM, ullibelgie said:

Another concern:
...

With my current large archive (tens of thousands of docs), upgrading to ngx still seems to be a risk for me, if the original docker-app will be removed soon... (as announced) - so I could not fall back to the original paperless-ng

 

I have not stated to remove the paperless-ng container any time soon. Please re-read the introduction post again:

 

On 3/13/2022 at 9:04 AM, T0a said:

For now, the paperless-ng and paperless-ngx Unraid templates will coexist in the community application store. That allows existing users to still rely on the mature paperless-ng for their productive environment and make the change to paperless-ngx once they feel comfortable.

 

Edited by T0a

  • 2 weeks later...

hello, 

 

what is the best way to install gotenberg and apache tika, to use this with paperless ngx?? 

 

https://github.com/gotenberg/gotenberg

 

happy eastern

Thomas 

Edited by donbruno

I installed these 2 containers:

Repository: gotenberg/gotenberg
Repository: apache/tika

In Paperless i added these 3 varibles:

Name / Key:    PAPERLESS_TIKA_ENABLED

Value:    1

 

Name / Key:    PAPERLESS_TIKA_ENDPOINT

Value:    http://IP-of-tika-container:9998

 

Name / Key:    PAPERLESS_TIKA_GOTENBERG_ENDPOINT

Value:    http://IP-of-gotenberg-container:3000/forms/libreoffice/convert#

 

 

http:// before IP seems to be important. Only IP didnt work for me.

Hope this helpes

 

11.thumb.jpg.b6a7f2284d08e88c5b235dbb35fbbed9.jpg

 

12e.thumb.jpg.4b0de344c4f56cdef5127837665215cd.jpg

 

13.thumb.jpg.664d981624d958036d379445b4ecad02.jpg

 

Edited by fk_muck1
removed URL from screenshot

@fk_muck1wow thx very much and how Do you install These Containers? with portainer? 

 

 

sorry, I have it, New container

Edited by donbruno

As i couldnt find it in CA i took the results from DockerHub.
First Unraid made a test installation. Had no problems and after it i could make the installation.
I didnt use portainer.

14.jpg

for which docutypes is this setup? I want to import doc docx and I got a error

Dateityp application/octet-stream nicht unterstützt 😞

Edited by donbruno
errormsg

Until now i used docx, xlsx and pptx. All worked for me.

Edited by fk_muck1

  • 3 weeks later...
On 4/18/2022 at 12:25 AM, fk_muck1 said:

Until now i used docx, xlsx and pptx. All worked for me.

 

I'm getting this error when consuming pptx "Error while converting document to PDF: 503 Server Error:" gottenberg is installed and the endpoint seems to work.

Did you try to change the value of PAPERLESS_TIKA_GOTENBERG_ENDPOINT from :

http://ip-of-gotenberg:3000

to

http://ip-of-gotenberg:3000/forms/libreoffice/convert#

in Paperless?

 

In some cases this helped. For me it did the trick.

  • 2 weeks later...

hi

after the last update I can't access my paperless from outsite
Last week it was working

 

 

 

grafik.png

 

the Log:

[WARNING] [django.security.csrf] Forbidden (Origin checking failed - https://paperless.mydomain.com does not match any trusted origins.): /accounts/login/

 

Edited by Abigel

2 hours ago, Abigel said:
[WARNING] [django.security.csrf] Forbidden (Origin checking failed - https://paperless.mydomain.com does not match any trusted origins.): /accounts/login/

The error contains everything you need to know. Your domain is not allowed to use paperless. Add it to the trusted domain config of paperless.

 

https://paperless-ng.readthedocs.io/en/latest/configuration.html

 

Quote

PAPERLESS_ALLOWED_HOSTS<comma-separated-list>

If you’re planning on putting Paperless on the open internet, then you really should set this value to the domain name you’re using. Failing to do so leaves you open to HTTP host header attacks: https://docs.djangoproject.com/en/3.1/topics/security/#host-header-validation

 

Just remember that this is a comma-separated list, so “example.com” is fine, as is “example.com,www.example.com”, but NOT ” example.com” or “example.com,”

 

Defaults to “*”, which is all hosts.

 

10 hours ago, mgutt said:

The error contains everything you need to know. Your domain is not allowed to use paperless. Add it to the trusted domain config of paperless.

 

https://paperless-ng.readthedocs.io/en/latest/configuration.html

 

 

Sorry but I don't know where in what file I can add this in the docker container.

Where is the "docker-compose.env" in the docker container?

grafik.png.de2907bf886009ffca3219909839a6b6.png

17 hours ago, Abigel said:

Where is the "docker-compose.env" in the docker container?

unRAID does not use compose. Simply create a new variable by editing the container if it does not already exist. 

 

 

4 hours ago, mgutt said:

unRAID does not use compose. Simply create a new variable by editing the container if it does not already exist. 

 

 

Please tell me how
your link says "If you run paperless on docker, paperless.conf is not used. Rather, configure paperless by copying necessary options to docker-compose.env"

But I don't know how and where if there is not paperless.conf because it is a docker and there is no compose.env

Edited by Abigel

Edit the container, scroll down and click on add variable.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.