Skip to content

Deploying Sync-in

Introduction

Sync-in is a self-hosted file synchronization solution that allows you to keep files synchronized across multiple devices while maintaining complete control over your data. It provides a simple yet effective way to sync files without relying on third-party cloud services.

Key highlights of Sync-in:

  • Self-Hosted: Complete control over your synchronized data
  • Cross-Platform: Sync files across different operating systems
  • Real-Time Sync: Automatic synchronization when files change
  • Selective Sync: Choose which folders to synchronize
  • Version Control: Keep track of file versions
  • Encryption: Secure file transfers
  • Web Interface: Monitor sync status from your browser
  • Conflict Resolution: Automatic handling of sync conflicts
  • Lightweight: Minimal resource requirements

This guide walks through deploying Sync-in on Klutch.sh using Docker.

Why Deploy Sync-in on Klutch.sh

Deploying Sync-in on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically detects your Dockerfile and builds Sync-in without complex orchestration.

Persistent Storage: Attach persistent volumes for synchronized files.

HTTPS by Default: Secure file synchronization with automatic SSL certificates.

GitHub Integration: Connect your configuration repository for automatic redeployments.

Prerequisites

Before deploying Sync-in on Klutch.sh, ensure you have:

Deploying Sync-in on Klutch.sh

    Create Your Repository

    Create a new GitHub repository with a Dockerfile for Sync-in:

    FROM syncin/sync-in:latest
    ENV PUID=1000
    ENV PGID=1000
    EXPOSE 8080
    VOLUME ["/data", "/config"]

    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 8080

    Set Environment Variables

    Configure the following environment variables:

    VariableValue
    PUID1000
    PGID1000

    Attach Persistent Volumes

    Add the following volumes:

    Mount PathRecommended SizePurpose
    /config1 GBConfiguration and state
    /data100+ GBSynchronized files

    Deploy Your Application

    Click Deploy to start the build process.

    Access Sync-in

    Once deployment completes, access Sync-in at your app URL.

Configuration

Initial Setup

On first access:

  1. Create your admin account
  2. Configure sync folders
  3. Set up authentication

Adding Sync Folders

Add folders to synchronize:

  1. Navigate to the folder settings
  2. Add the path to synchronize
  3. Configure sync options (two-way, one-way, etc.)

Client Setup

Install the Sync-in client on your devices:

  1. Download the client for your platform
  2. Enter your server URL
  3. Authenticate with your credentials
  4. Select folders to sync

Additional Resources

Conclusion

Deploying Sync-in on Klutch.sh gives you a self-hosted file synchronization solution with automatic builds, persistent storage, and secure HTTPS access. Keep your files synchronized across devices while maintaining complete control over your data.