How to Install Scriberr: Step-by-Step Setup Guide

Scriberr is a practical choice if you want a clean, self-hosted way to turn audio or video into searchable text. Whether you are documenting meetings, processing podcast episodes, or building a private transcription workflow, the setup is fairly approachable if you are comfortable with basic terminal commands.

TLDR: The easiest way to install Scriberr is with Docker Compose, because it packages the application and its dependencies into a repeatable setup. You will need Docker, the Scriberr project files, a configured environment file, and a persistent storage folder for uploads and transcripts. After starting the containers, you can open Scriberr in your browser, create or configure access, and run a test transcription to confirm everything works.

Before You Begin

Before installing Scriberr, make sure your server or computer is ready. Scriberr can run on a local machine, a home server, a VPS, or a small workstation. For the smoothest experience, especially when processing longer recordings, use a machine with decent CPU performance and enough storage for uploaded media files.

Recommended prerequisites:

  • Docker installed and running
  • Docker Compose available through the docker compose command
  • At least 4 GB of RAM, though more is better for large files
  • Enough disk space for audio, video, generated transcripts, and temporary files
  • Basic terminal access through Linux, macOS, Windows Terminal, or SSH

If you are using a cloud VPS, start with a modest instance and upgrade if transcription jobs take too long. If you are using your own hardware, consider where you want Scriberr to store media files so they do not accidentally fill your system drive.

Step 1: Create a Working Directory

Start by creating a dedicated folder for Scriberr. Keeping the application files in one place makes updates, backups, and troubleshooting much easier.

mkdir -p ~/scriberr
cd ~/scriberr

If you prefer installing it under a system location, you can use something like /opt/scriberr instead:

sudo mkdir -p /opt/scriberr
sudo chown $USER:$USER /opt/scriberr
cd /opt/scriberr

This directory will hold the Compose configuration, environment settings, and any folders you map for persistent storage.

Step 2: Get the Scriberr Files

Next, download the official Scriberr project files. The exact repository location can change over time, so it is best to copy the clone URL from the official Scriberr project page or documentation.

git clone <official Scriberr repository URL> .

The period at the end tells Git to place the files directly into your current folder instead of creating another nested directory. After cloning, list the files:

ls

Look for a docker-compose.yml, compose.yml, or similar file. You may also see an example environment file such as .env.example. These files are the foundation of the installation.

Step 3: Configure Environment Variables

Most self-hosted applications use an environment file to store settings such as ports, database credentials, upload paths, secret keys, and application URLs. If Scriberr includes an example file, copy it first:

cp .env.example .env

Then open it in your preferred editor:

nano .env

Review each value carefully. You may need to adjust:

  • Application port: the local port used to access Scriberr in your browser
  • Storage path: where uploads and transcripts should be saved
  • Secret key: a random value used for sessions or application security
  • Database settings: only if the Compose file requires a separate database service
  • Public URL: useful if you plan to access Scriberr through a domain name or reverse proxy

Tip: If you see a default password, default secret, or placeholder value, change it before exposing the app to your network or the internet.

Step 4: Prepare Persistent Storage

Scriberr will likely need storage for uploaded media, processed text, logs, and temporary conversion files. If the Compose file already defines volumes, confirm that they point somewhere sensible. If it uses local folders, create them now:

mkdir -p data uploads transcripts

Persistent storage is important because Docker containers can be recreated during updates. You do not want your transcripts disappearing just because you pulled a newer image or restarted the stack.

Step 5: Start Scriberr with Docker Compose

Once the configuration is ready, start the application:

docker compose up -d

The -d flag runs the containers in the background. Docker will pull any required images and start the services defined in the Compose file. The first run may take a few minutes, especially if large images or transcription-related dependencies need to be downloaded.

Check the container status:

docker compose ps

If everything is healthy, you should see the Scriberr service running. If a container exits immediately, inspect the logs:

docker compose logs -f

Common issues include incorrect environment values, missing folders, port conflicts, or insufficient permissions on mounted directories.

Step 6: Open Scriberr in Your Browser

Now open Scriberr using your server address and configured port. For a local installation, this may look like:

http://localhost:8080

For a remote server, use the server IP address:

http://your-server-ip:8080

If you changed the port in your environment file or Compose configuration, use that port instead. On first launch, Scriberr may ask you to create an administrator account, sign in with configured credentials, or complete a short setup screen.

Once inside, upload a short audio file as a test. Choose something under a few minutes so you can quickly confirm that transcription, saving, and viewing results all work as expected.

Step 7: Optional Reverse Proxy Setup

If you want to access Scriberr through a domain such as scriberr.example.com, place it behind a reverse proxy such as Nginx, Caddy, or Traefik. This also makes it easier to add HTTPS.

A reverse proxy is especially useful when Scriberr is running on a home server or VPS with multiple services. Instead of remembering ports, you use clean domain names. For public access, always enable TLS and use strong authentication.

Basic reverse proxy checklist:

  • Point your domain or subdomain to the server IP address
  • Forward traffic from the proxy to Scriberr’s internal port
  • Enable HTTPS certificates
  • Confirm upload size limits are high enough for your media files
  • Restrict access if the instance is meant to be private

Step 8: Updating Scriberr

To update Scriberr, first enter the installation directory:

cd ~/scriberr

If you installed from Git, pull the latest project changes:

git pull

Then pull updated container images and restart:

docker compose pull
docker compose up -d

Finally, check logs for errors:

docker compose logs --tail=100

Before major updates, back up your .env file and persistent data folders. This simple habit can save hours if a configuration change or migration does not behave as expected.

Troubleshooting Common Problems

  • Port already in use: Change Scriberr’s exposed port in the Compose file or stop the conflicting service.
  • Permission denied errors: Ensure Docker can read and write to the mounted folders.
  • Uploads fail: Check file size limits in Scriberr and, if applicable, your reverse proxy.
  • Slow transcription: Use shorter files, upgrade CPU resources, or check whether hardware acceleration is supported by your setup.
  • Blank page or connection refused: Confirm containers are running with docker compose ps and review logs.

Final Thoughts

Installing Scriberr is mostly about preparing a clean Docker environment, setting the right storage paths, and verifying that your first transcription completes successfully. Once it is running, you get the convenience of a browser-based transcription workflow while keeping your files under your own control.

Take a few extra minutes to secure the instance, back up your data, and document your environment settings. A careful setup now will make Scriberr easier to maintain, update, and rely on for everyday transcription work.