SnapOtter

SnapOtter

Official

Docker app from SnapOtter's Repository

Overview

Self-hosted file toolkit with 200+ tools for image, video, audio, PDF, and file workflows. SnapOtter keeps files on your Unraid server and includes an image editor, batch jobs, pipelines, REST API access, OIDC/SSO support, and optional local AI features.

SnapOtter for Unraid Community Applications

Official Unraid Community Applications metadata for SnapOtter.

SnapOtter is a self-hosted file manipulation suite with 200+ tools across image, video, audio, PDF, and general file workflows. It runs on your own server, keeps files on your hardware, and includes an image editor, batch jobs, pipelines, REST API access, OIDC/SSO support, and optional local AI features.

Repository Scope

This repository exists only for Unraid Community Applications submission metadata. It contains:

  • ca_profile.xml - Community Applications repository profile.
  • templates/snapotter.xml - SnapOtter Docker template.
  • icon.png and profile.png - listing assets used by Community Applications.

The SnapOtter source code, release notes, issue tracker, and product documentation live in the main project repository.

Links

Unraid Install Notes

The Unraid template installs the official single-container image:

snapotter/snapotter:latest

The template intentionally uses SnapOtter embedded mode. Because it does not set DATABASE_URL or REDIS_URL, the container starts PostgreSQL 17 and Redis inside the same container on loopback and stores persistent data under /data.

Default web UI:

http://<unraid-ip>:1349

Default first login:

Username: admin
Password: admin

SnapOtter prompts for a password change on first login. You can also set DEFAULT_PASSWORD before the first start.

Template Defaults

Setting Default
Web UI port 1349
Data path /mnt/user/appdata/snapotter/data -> /data
Workspace path /mnt/user/appdata/snapotter/workspace -> /tmp/workspace
Auth AUTH_ENABLED=true
PUID / PGID 99 / 100
Shared memory --shm-size=2g
Upload limit MAX_UPLOAD_SIZE_MB=0
Batch limit MAX_BATCH_SIZE=0
Embedded Redis memory REDIS_MAXMEMORY=512mb

Backups

Back up the full Unraid data path:

/mnt/user/appdata/snapotter/data

That directory contains embedded PostgreSQL and Redis data, user files, logs, settings, AI models, and installed AI bundles. Do not back up only one file inside it.

The workspace path is temporary processing space. SnapOtter cleans job data automatically, but the path should have enough free space for large media files and batch jobs.

Optional AI And GPU

Local AI features are optional. When an admin enables an AI-backed tool, SnapOtter may download model bundles into the persistent data path.

The official image can use NVIDIA CUDA on amd64 when a GPU is passed through. The Unraid template does not attach GPUs by default. Install the Unraid NVIDIA Driver plugin and add GPU runtime settings manually if you want CUDA acceleration.

Maintainer Validation

Before submitting or updating this repository in Community Applications:

xmllint --noout ca_profile.xml templates/snapotter.xml
docker manifest inspect snapotter/snapotter:latest
gh api repos/snapotter-hq/unraid-community-apps --jq '.license.spdx_id'

Then run Validate and Scan in the Unraid Community Applications submission portal:

https://ca.unraid.net/submit/new

Submit this repository URL:

https://github.com/snapotter-hq/unraid-community-apps

License

The metadata in this repository is licensed under AGPL-3.0, matching SnapOtter's open-source license. SnapOtter commercial licensing is documented in the main project repository.

Install SnapOtter on Unraid in a few clicks.

Find SnapOtter in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.

Open the Apps tab on your Unraid server Search Community Apps for SnapOtter Review the template variables and paths Click Install

Requirements


    Minimum: 2 GB RAM for basic workflows. Use more memory and CPU for large batches, video processing, and optional local AI features.
    Storage: keep /data backed up. It contains embedded PostgreSQL and Redis data, user files, logs, settings, AI models, and installed AI bundles.
    First login: admin / admin. Change the password during first login or set DEFAULT_PASSWORD before first start.
    AI bundles: optional local AI features may download model bundles the first time an admin enables them.
    NVIDIA GPU: the image can use CUDA on amd64 when an NVIDIA GPU is passed through. This template does not attach GPUs by default; install the Unraid NVIDIA Driver plugin and add the GPU runtime settings manually if needed.

Download Statistics

152,208
Total Downloads

Details

Repository
snapotter/snapotter:latest
Last Updated2026-07-07
First Seen2026-07-08

Runtime arguments

Web UI
http://[IP]:[PORT:1349]
Network
bridge
Shell
bash
Privileged
false
Extra Params
--shm-size=2g

Template configuration

WebUIPorttcp

HTTP port for the SnapOtter web interface.

Target
1349
Default
1349
DataPathrw

Persistent SnapOtter data, including embedded PostgreSQL and Redis data, files, logs, settings, AI models, and installed AI bundles.

Target
/data
Default
/mnt/user/appdata/snapotter/data
WorkspacePathrw

Temporary processing workspace. SnapOtter cleans job data automatically, but this path should have enough free space for large media and batch operations.

Target
/tmp/workspace
Default
/mnt/user/appdata/snapotter/workspace
AUTH_ENABLEDVariable

Require login for the web UI and API. Leave enabled unless SnapOtter is protected by another trusted authentication layer.

Default
true
DEFAULT_USERNAMEVariable

Initial admin username. Used only when the first admin account is created.

Default
admin
DEFAULT_PASSWORDVariable

Initial admin password. Change it after first login.

Default
admin
PUIDVariable

User ID for files created in mounted paths. Unraid's nobody user is usually 99.

Default
99
PGIDVariable

Group ID for files created in mounted paths. Unraid's users group is usually 100.

Default
100
MAX_UPLOAD_SIZE_MBVariable

Maximum upload size per file in MB. Set to 0 for unlimited.

Default
0
MAX_BATCH_SIZEVariable

Maximum number of files in a batch. Set to 0 for unlimited.

Default
0
CONCURRENT_JOBSVariable

Number of batch jobs to process in parallel. Set to 0 to auto-detect from CPU cores.

Default
0
REDIS_MAXMEMORYVariable

Memory cap for embedded Redis. Lower this on memory-constrained systems.

Default
512mb
TRUST_PROXYVariable

Trust X-Forwarded-For headers from a reverse proxy. Set to false if SnapOtter is not behind a trusted proxy.

Default
true