Skip to Content
DocumentationReferenceFolder Structure

Folder Structure

In this section, we will describe the folder structure of Runtipi. Here is a look of the folder structure after installation:

      • tipi-compose.yml
    • docker-compose.yml
    • runtipi-cli
    • VERSION
    • .env
    • .env.local

App Data

The app-data folder contains all the data of the apps that are installed on your Runtipi instance. Each app store has its own subfolder (e.g., migrated), and each app has its own folder inside that app store folder.

💡

In version 4.0.0, Runtipi introduced multi app-store support. Apps that were migrated from earlier versions will be placed in the migrated app store folder.

Apps

The apps folder contains all the applications that are installed on your Runtipi instance. Similar to the app-data folder, each app store has its own subfolder, and each app has its own folder inside that app store folder. This folder contains the app’s configuration files (e.g., docker-compose.yml, info.json, etc.).

Backups

The backups folder contains all the backups of the apps. Each app store has its own subfolder, and each app has its own folder containing all the backups in the .tar.gz file format. This folder can be also used for backups of the entire Runtipi instance.

Data

The data folder contains all the data of Runtipi, for example it includes the Postgres database data and the Redis data.

Logs

The logs folder contains all the logs of Runtipi. The logs are separated into 2 files

    • error.log
    • app.log

The error.log file contains all the errors that are thrown by Runtipi. The app.log file contains all the logs that are printed by Runtipi.

Media

The media folder contains all the media files that are uploaded to the device. (e.g. images, videos, etc.) The media folder is an exception to the rule that all the data are stored in the app-data folder, this is because the media files are not app specific and can be used by multiple apps. For example the *arr stack uses the media folder to store the downloaded media files.

Repos

The repos folder contains the app store repositories. Each repository is a folder with the repository id. If you add a custom repository in your settings.json file, it will be downloaded to this folder and displayed by the dashboard.

State

The state folder contains the state of your instance. It contains the settings.json file which contains the custom settings of the installation alongside some other files necessary for Runtipi to run.

Traefik

The traefik folder contains all the configuration and certificates for the runtipi-reverse-proxy.

User Config

The user-config folder contains all user config. Like the other folders, each app store has its own subfolder, and each app has its own folder which can contain a custom docker-compose.yml and app.env. See Customizing app config.

Additionally, you can also customize Runtipi’s Docker Compose file using the tipi-compose.yml file at the root of the user-config folder. See Customize Runtipi compose and traefik config.

Docker Compose

This is the default Docker Compose file for your Runtipi instance. It gets regenerated every time by the CLI and uses the values from the .env file to configure your instance (see below). This file is not meant to be edited, if you want to modify it please take a look at Customize Runtipi compose and traefik config.

Runtipi CLI

You are probably already familiar with the runtipi-cli. It provides a command line interface to configure and manage your instance, for example start, stop, restart etc. See Using the CLI for more info.

Version

This file just contains the Runtipi version in plain text, for example v4.0.0.

Environment

This file contains all the configuration of the Runtipi instance. For example it includes database passwords, versions, paths and all required environment variables for Runtipi to run. It is not designed to be modified as it gets regenerated every time by the CLI. To make changes please check the .env.local file below.

Local Environment

The .env.local file doesn’t exist by default. You can create it to customize Runtipi’s environment file. For instructions on how to use it see Custom environment variables

Last updated on