Skip to content

papra

Papra DMS (document management).

papra

Prepare

podman pull ghcr.io/papra-hq/papra:latest-root
mkdir -p $HOME/apps/{variables,container_data}
touch $HOME/apps/variables/papra.env
mkdir -p $HOME/apps/container_data/papra

Edit environment file

Edit the environment file and paste your default values for this service:

nano $HOME/apps/variables/papra.env
Save the result for AUTH_SECRET

openssl rand -base64 32

Example contents:

PUID=1000
PGID=1000
TZ=Europe/Athens
AUTH_SECRET=G1JR5JLplm5zv2ulGJKHLoobwKfsgWqgZK9Ig8ZNQBPtUrwH
CLIENT_BASE_URL=http://dms.skynet.lan
SERVER_BASE_URL=http://dms.skynet.lan

Installation

touch $HOME/.config/containers/systemd/papra.container
# papra.container
[Container]
ContainerName=papra
HostName=papra
AutoUpdate=registry
Image=ghcr.io/papra-hq/papra:latest-root
Network=skynet.network
EnvironmentFile=%h/apps/variables/papra.env
Volume=%h/apps/container_data/papra:/app/app-data
[Service]
Restart=always
TimeoutStartSec=300
[Install]
WantedBy=default.target

Configuration of Nginx (Reverse Proxy)

Create nginx conf.

touch $HOME/apps/container_data/nginx/papra.conf

Configuration for nginx conf for port 80.

server {
  listen 80;
  server_name dms.skynet.lan;

  access_log /var/log/nginx/papradms_access.log;
  error_log /var/log/nginx/papradms_error.log;

  location / {
    proxy_pass http://papra:1221;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_redirect off;

    #add_header P3P 'CP=""';
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Host $http_host;
    proxy_set_header X-Forwarded-Proto $scheme;

  }
}

Restart Nginx

systemctl --user restart nginx

Usage

Open http://dms.skynet.lan

Troubleshooting

podman logs -f papra
journalctl --user -u nginx -n 200