Skip to content

Deploying Remotely

Introduction

Remotely is a self-hosted remote desktop and support solution that allows IT professionals and support teams to provide assistance without relying on third-party services. Built with .NET and Blazor, Remotely offers a full-featured remote access platform with screen sharing, file transfer, remote control, and multi-monitor support.

Key highlights of Remotely:

  • Self-Hosted: Complete control over your remote access infrastructure
  • Cross-Platform Support: Remote control for Windows, Linux, and macOS
  • Screen Sharing: Real-time screen viewing and remote control capabilities
  • File Transfer: Secure file transfer between local and remote machines
  • Multi-Monitor Support: View and control multiple monitors simultaneously
  • Unattended Access: Deploy agents for unattended remote access
  • Chat Integration: Built-in chat for communication during support sessions
  • Device Management: Organize and manage devices with groups and tags
  • Audit Logging: Track remote sessions and activities for compliance
  • API Access: RESTful API for automation and integrations
  • Open Source: Fully open-source under GPL-3.0 license

This guide walks through deploying Remotely on Klutch.sh using Docker, configuring the server, and setting up client devices.

Why Deploy Remotely on Klutch.sh

Deploying Remotely on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically builds and deploys your Remotely server from a Dockerfile without complex setup.

Persistent Storage: Attach persistent volumes for the database, logs, and client files that survive container restarts.

HTTPS by Default: Klutch.sh provides automatic SSL certificates, essential for secure remote access connections.

Always-On Availability: Your Remotely server remains accessible 24/7 for remote support needs.

Environment Variable Management: Securely store sensitive configuration through Klutch.sh’s environment variable system.

Custom Domains: Assign a custom domain for a professional IT support experience.

Prerequisites

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

  • A Klutch.sh account
  • A GitHub account with a repository for your Remotely configuration
  • Basic familiarity with Docker and containerization concepts
  • (Optional) An external PostgreSQL or SQL Server database
  • (Optional) A custom domain for your Remotely server

Preparing Your Repository

Create a GitHub repository containing your Dockerfile for Remotely deployment.

Repository Structure

remotely-deploy/
├── Dockerfile
└── .dockerignore

Creating the Dockerfile

Create a Dockerfile in the root of your repository:

FROM immybot/remotely:latest
# Set environment variables
ENV ASPNETCORE_ENVIRONMENT=Production
ENV ASPNETCORE_URLS=http://+:5000
# Create data directory
RUN mkdir -p /app/AppData
# Expose the web interface port
EXPOSE 5000
# The base image includes the default entrypoint

Environment Variables Reference

VariableRequiredDescription
ASPNETCORE_ENVIRONMENTNoApplication environment (default: Production)
ASPNETCORE_URLSNoURL binding (default: http://+:5000)

Deploying Remotely on Klutch.sh

    Push Your Repository to GitHub

    Commit and push your Dockerfile to GitHub.

    Create a New Project on Klutch.sh

    Navigate to the Klutch.sh dashboard and create a new project with a descriptive name like “remotely” or “remote-support”.

    Create a New App

    Within your project, create a new app. Connect your GitHub account and select the repository containing your Remotely Dockerfile.

    Configure HTTP Traffic

    In the deployment settings:

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

    Attach Persistent Volumes

    Add the following volume:

    Mount PathRecommended SizePurpose
    /app/AppData5 GBDatabase, logs, and client installers

    Deploy Your Application

    Click Deploy to start the build process. Klutch.sh will build the container, attach volumes, and provision HTTPS.

    Access Remotely

    Once deployment completes, access your Remotely instance at your app URL.

Initial Configuration

First-Time Setup

After accessing Remotely for the first time:

  1. Create your administrator account
  2. Navigate to Server Config in the admin panel
  3. Configure server settings including the server URL

Configuring Server Settings

In the Server Config section:

  1. Set the Server URL to your Klutch.sh app URL
  2. Configure branding options (organization name, logo)
  3. Set up SMTP for notifications if needed
  4. Configure allowed file types for transfers

Creating Organizations

  1. Navigate to Organization settings
  2. Create additional organizations for multi-tenant setups
  3. Configure organization-specific settings

Deploying Agents

To enable unattended access:

  1. Go to Downloads to get the client installer
  2. Deploy the agent to target machines
  3. Devices will appear in the Devices section once connected

Security Considerations

  • Always use HTTPS (automatically provided by Klutch.sh)
  • Enable two-factor authentication for admin accounts
  • Regularly review audit logs for unauthorized access attempts
  • Keep the Remotely server updated with security patches

Additional Resources

Conclusion

Deploying Remotely on Klutch.sh gives you a powerful, self-hosted remote support platform with automatic SSL, persistent storage, and reliable uptime. Whether you’re providing IT support for a small business or managing a distributed workforce, Remotely on Klutch.sh delivers the control and security of self-hosting with the convenience of managed infrastructure.