Photos and files guide
Paperless-ngx, from anywhereFind any document from anywhere, without putting your paperwork on the open internet.
You'll need
Everything happens in your browser except step 1.
Run this on the machine where Paperless-ngx runs. The container connects out to Seawise.io, so you don't open any ports on your router.
On Docker Desktop for Mac or Windows, replace --network host with -p 8082:8082.
$ docker run -d --name seawise \ --restart unless-stopped \ --network host \ -v seawise-data:/config \ ghcr.io/seawise-io/seawise-client:latest
✓ Container started
On a computer at home, open http://your-server-ip:8082 and create a password for the container's page.
Give the server a name, click Connect, and approve it in the seawise.io tab that opens. Sign up for free there if you haven't yet.
Fill in the name, the address and the port Paperless-ngx uses (8000 by default), then click Add.
--network host, use localhost. On Docker Desktop, use host.docker.internal. If Paperless-ngx runs on another machine, use its local IP, like 192.168.1.20.Paperless-ngx now shows on your Servers page at seawise.io. Click it from any browser, on any network, and you're in.
Go to Portals, create one (say, Family), and add Paperless-ngx to it. Then open its sharing settings and add the email of everyone who should get in.
Skip this step if Paperless-ngx is just for you.
Send them the portal link. They sign in with the email you added, using Google, GitHub or an email link, and tap Paperless-ngx. Nothing to install, on any phone, tablet or laptop.
01
Add people under Settings > Users & Groups. New users get no permissions except what their groups give them, so put them in a group or grant permissions directly.
02
Documents you upload are owned by you with no extra permissions. Change that under Settings > Permissions, or use Workflows for documents from the consume folder.
03
The superuser you made at setup can see everything. Make a normal account for everyday use, and keep PAPERLESS_ACCOUNT_ALLOW_SIGNUPS at its default of false.
Paperless-ngx needs your outside address for its CSRF and host checks. Add this to docker-compose.env with no trailing slash and no path, then recreate the containers.
PAPERLESS_URL=https://your-app.seawise.dev
The Seawise.io container can't reach the webserver. Run curl http://localhost:8000 on the server and check the port mapping in docker-compose.yml.
Paperless-ngx doesn't trust your Seawise.io address yet. Set PAPERLESS_URL as shown above, which also adds it to the trusted origins and allowed hosts.
Paperless-ngx share links skip its own login, but a private Seawise.io app still asks visitors to sign in. Add the recipient to your portal, or email the file from the Send button instead.
Third-party Paperless-ngx apps can't show the Seawise.io sign-in. They need the app made public on the Admin plan, with Paperless-ngx's login as the only gate.