Skip to content

Installation

This guide will help you install and set up TaskTrove on your system.

TaskTrove is a powerful, self-hosted task management application designed for individuals and teams who want advanced productivity features without compromising on data ownership.

Installation Methods

Option 1: Docker

The fastest way to get TaskTrove running:

bash
docker run -p 3000:3000 -v ./data:/app/data -d --restart=always --name tasktrove ghcr.io/dohsimpson/tasktrove

That's it! TaskTrove will be running on port 3000.

Option 2: Docker Compose

For a more permanent setup:

bash
# Download the setup files
git clone https://github.com/dohsimpson/TaskTrove
cd TaskTrove/selfhost

# Start TaskTrove
docker-compose up -d

TaskTrove will be running on port 3000.

Accessing TaskTrove

Once installed, open your web browser and navigate to:

http://localhost:3000

First Time Setup

When accessing TaskTrove after a fresh install, you will be prompted to set up the data files. This initial setup process creates the necessary directories and configuration files for your task management system.

Authentication

By default, TaskTrove requires no login. If you want to add password protection, you need to set the AUTH_SECRET environment variable.

bash
# Docker
docker run -p 3000:3000 -v ./data:/app/data \
  -e AUTH_SECRET="random-long-encryption-key" \
  -d --restart=always --name tasktrove \
  ghcr.io/dohsimpson/tasktrove

Or in docker-compose.yml, see an example at https://github.com/dohsimpson/TaskTrove/blob/main/selfhost/docker-compose-with-auth.yml

To generate a random encryption key, you can use openssl rand -hex 32 or visit https://generate-secret.vercel.app/32.

With AUTH_SECRET set, you'll be prompted to create an account on first visit and log in on subsequent visits. Without it, the app works immediately with no login screen.

Next Steps

Now that TaskTrove is installed, you can start creating tasks and organizing your projects. Check out the User Guide to learn about key features and workflows.