T0a Posted March 13, 2022 Share Posted March 13, 2022 (edited) 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! Migrating from paperless to paperless-ngx: https://docs.paperless-ngx.com/setup/#migrating-from-paperless Migrate from paperless-ng to paperless-ngx: https://docs.paperless-ngx.com/setup/#migrating-from-paperless-ng Migrate from paperless to paperless-ng: https://paperless-ng.readthedocs.io/en/latest/setup.html?highlight=migrate#migration-to-paperless-ng 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 December 12, 2022 by T0a Update links 1 2 Quote Link to comment
pika Posted March 15, 2022 Share Posted March 15, 2022 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? Quote Link to comment
cfranz Posted March 16, 2022 Share Posted March 16, 2022 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? Quote Link to comment
T0a Posted March 19, 2022 Author Share Posted March 19, 2022 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! Quote Link to comment
T0a Posted March 19, 2022 Author Share Posted March 19, 2022 (edited) 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 March 19, 2022 by T0a Quote Link to comment
cfranz Posted March 20, 2022 Share Posted March 20, 2022 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 Quote Link to comment
ullibelgie Posted March 20, 2022 Share Posted March 20, 2022 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... Quote Link to comment
jeypiti Posted March 22, 2022 Share Posted March 22, 2022 (edited) 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: Find your paperless container in the UI. Open the configuration. Under "Repository", replace jonaswinkler/paperless-ng:latest with ghcr.io/paperless-ngx/paperless-ngx:latest 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: Stop the paperless-ng container. 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). Start the paperless-ngx container and check that everything is working as you'd expect. Remove the paperless-ng container. Edited March 22, 2022 by jeypiti Quote Link to comment
ullibelgie Posted April 1, 2022 Share Posted April 1, 2022 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... Quote Link to comment
T0a Posted April 9, 2022 Author Share Posted April 9, 2022 (edited) 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 April 9, 2022 by T0a Quote Link to comment
donbruno Posted April 17, 2022 Share Posted April 17, 2022 (edited) 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 April 17, 2022 by donbruno Quote Link to comment
fk_muck1 Posted April 17, 2022 Share Posted April 17, 2022 (edited) 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 Edited September 27, 2023 by fk_muck1 removed URL from screenshot 1 4 Quote Link to comment
donbruno Posted April 17, 2022 Share Posted April 17, 2022 (edited) @fk_muck1wow thx very much and how Do you install These Containers? with portainer? sorry, I have it, New container Edited April 17, 2022 by donbruno Quote Link to comment
fk_muck1 Posted April 17, 2022 Share Posted April 17, 2022 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. Quote Link to comment
donbruno Posted April 17, 2022 Share Posted April 17, 2022 (edited) 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 April 17, 2022 by donbruno errormsg Quote Link to comment
fk_muck1 Posted April 18, 2022 Share Posted April 18, 2022 (edited) Until now i used docx, xlsx and pptx. All worked for me. Edited April 18, 2022 by fk_muck1 Quote Link to comment
redeuxx Posted May 4, 2022 Share Posted May 4, 2022 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. Quote Link to comment
fk_muck1 Posted May 5, 2022 Share Posted May 5, 2022 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. Quote Link to comment
Abigel Posted May 19, 2022 Share Posted May 19, 2022 (edited) hi after the last update I can't access my paperless from outsite Last week it was working the Log: [WARNING] [django.security.csrf] Forbidden (Origin checking failed - https://paperless.mydomain.com does not match any trusted origins.): /accounts/login/ Edited May 19, 2022 by Abigel Quote Link to comment
mgutt Posted May 19, 2022 Share Posted May 19, 2022 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. Quote Link to comment
Abigel Posted May 20, 2022 Share Posted May 20, 2022 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? Quote Link to comment
mgutt Posted May 20, 2022 Share Posted May 20, 2022 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. Quote Link to comment
Abigel Posted May 21, 2022 Share Posted May 21, 2022 (edited) 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 May 21, 2022 by Abigel Quote Link to comment
mgutt Posted May 21, 2022 Share Posted May 21, 2022 Edit the container, scroll down and click on add variable. Quote Link to comment
Recommended Posts
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.