Installing Papra using Docker
Papra provides optimized Docker images for streamlined deployment. This method is recommended for users seeking a production-ready setup with minimal maintenance overhead.
- Simplified management: Single container handles all components
- Lightweight: Optimized image sizes across architectures
- Cross-platform support: Compatible with
arm64
,arm/v7
, andx86_64
systems - Security options: Supports both rootless (recommended) and rootful configurations
Prerequisites
Ensure Docker is installed on your host system. Official installation guides are available at: docker.com/get-started
Verify Docker installation with:
docker --version
Quick Deployment
Launch Papra with default configuration using:
docker run -d \ --name papra \ --restart unless-stopped \ -p 1221:1221 \ ghcr.io/papra-hq/papra:latest
This command will:
- Pull the latest rootless image from GitHub Container Registry
- Expose the web interface on http://localhost:1221
- Configure automatic restarts for service continuity
Image Variants
Choose between two security models based on your requirements:
- Rootless: Tagged as
latest
,latest-rootless
or<version>-rootless
(like0.2.1-rootless
). Recommended for most users. - Root: Tagged as
latest-root
or<version>-root
(like0.2.1-root
). Only use if you need to run Papra as the root user.
The :latest
tag always references the latest rootless build.
Persistent Data Configuration
For production deployments, mount host directories to preserve application data between container updates.
-
Create Storage Directories
Create a directory for Papra data
./papra-data
, with./papra-data/db
and./papra-data/documents
subdirectories:Terminal window mkdir -p ./papra-data/{db,documents} -
Launch Container with Volume Binding
Terminal window docker run -d \--name papra \--restart unless-stopped \-p 1221:1221 \-v $(pwd)/papra-data:/app/app-data \--user $(id -u):$(id -g) \ghcr.io/papra-hq/papra:latestThis configuration:
- Maintains data integrity across container lifecycle events
- Enforces proper file ownership without manual permission adjustments
- Stores both database files and document assets persistently
Image Registries
Papra images are distributed through multiple channels:
Primary Source (GHCR):
docker pull ghcr.io/papra-hq/papra:latestdocker pull ghcr.io/papra-hq/papra:latest-rootlessdocker pull ghcr.io/papra-hq/papra:latest-root
Community Mirror (Docker Hub):
docker pull corentinth/papra:latestdocker pull corentinth/papra:latest-rootlessdocker pull corentinth/papra:latest-root
Updating Papra
Regularly pull updated images and recreate containers to receive security patches and feature updates.
docker pull ghcr.io/papra-hq/papra:latest# Ordocker pull corentinth/papra:latest