Skip to content

Deploying TagSpaces

Introduction

TagSpaces is an offline-first, privacy-focused file manager and organizer that helps you tag and browse your files. Unlike cloud-based solutions, TagSpaces stores tags directly in filenames or sidecar files, ensuring your organization system is portable and not locked into any service.

Key highlights of TagSpaces:

  • Privacy First: No cloud dependency, your data stays local
  • Tag-Based Organization: Organize files with customizable tags
  • File Preview: Preview documents, images, and media files
  • Cross-Platform: Works on Windows, macOS, Linux, and web
  • Portable Tags: Tags stored in filenames or sidecar files
  • Color-Coded Tags: Visual organization with colored tags
  • Search and Filter: Find files by tags, type, or content
  • Markdown Support: Edit and preview Markdown files
  • Location Management: Manage multiple file locations
  • Open Source: Fully transparent and customizable

This guide walks through deploying TagSpaces on Klutch.sh using Docker.

Why Deploy TagSpaces on Klutch.sh

Deploying TagSpaces on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically detects your Dockerfile and builds TagSpaces without complex orchestration.

Persistent Storage: Attach persistent volumes for your files.

HTTPS by Default: Secure access to your files from anywhere.

GitHub Integration: Connect your configuration repository for automatic redeployments.

Prerequisites

Before deploying TagSpaces on Klutch.sh, ensure you have:

Deploying TagSpaces on Klutch.sh

    Create Your Repository

    Create a new GitHub repository with a Dockerfile for TagSpaces:

    FROM tagspaces/tagspaces-web:latest
    ENV PUID=1000
    ENV PGID=1000
    EXPOSE 80
    VOLUME ["/data"]

    Push to GitHub

    Initialize and push your repository to GitHub with your Dockerfile.

    Create a New Project on Klutch.sh

    Navigate to the Klutch.sh dashboard and create a new project.

    Create a New App

    Within your project, create a new app and connect your GitHub repository.

    Configure HTTP Traffic

    In the deployment settings:

    • Select HTTP as the traffic type
    • Set the internal port to 80

    Set Environment Variables

    Configure the following environment variables:

    VariableValue
    PUID1000
    PGID1000

    Attach Persistent Volumes

    Add the following volumes:

    Mount PathRecommended SizePurpose
    /data100+ GBYour files to organize

    Deploy Your Application

    Click Deploy to start the build process.

    Access TagSpaces

    Once deployment completes, access TagSpaces at your app URL.

Configuration

Adding Locations

Add file locations to TagSpaces:

  1. Click Connect a Location
  2. Choose the folder path
  3. Configure location settings
  4. Start browsing your files

Tagging Files

Tag your files:

  1. Select a file
  2. Click the tag icon or right-click
  3. Add existing tags or create new ones
  4. Tags are saved to the filename or sidecar file

Tag Groups

Organize tags into groups:

  1. Navigate to Settings > Tag Library
  2. Create tag groups (e.g., Status, Priority, Project)
  3. Add tags to each group
  4. Assign colors for visual distinction

File Previews

TagSpaces can preview:

  • Images (JPG, PNG, GIF, SVG)
  • Documents (PDF, Office files)
  • Text files (TXT, MD, HTML)
  • Audio and video files

Additional Resources

Conclusion

Deploying TagSpaces on Klutch.sh gives you a privacy-focused file organization system with automatic builds, persistent storage, and secure HTTPS access. Organize your files with tags while keeping full control of your data.