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└── .dockerignoreCreating the Dockerfile
Create a Dockerfile in the root of your repository:
FROM immybot/remotely:latest
# Set environment variablesENV ASPNETCORE_ENVIRONMENT=ProductionENV ASPNETCORE_URLS=http://+:5000
# Create data directoryRUN mkdir -p /app/AppData
# Expose the web interface portEXPOSE 5000
# The base image includes the default entrypointEnvironment Variables Reference
| Variable | Required | Description |
|---|---|---|
ASPNETCORE_ENVIRONMENT | No | Application environment (default: Production) |
ASPNETCORE_URLS | No | URL binding (default: http://+:5000) |
Deploying Remotely on Klutch.sh
- Select HTTP as the traffic type
- Set the internal port to 5000
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:
Attach Persistent Volumes
Add the following volume:
| Mount Path | Recommended Size | Purpose |
|---|---|---|
/app/AppData | 5 GB | Database, 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:
- Create your administrator account
- Navigate to Server Config in the admin panel
- Configure server settings including the server URL
Configuring Server Settings
In the Server Config section:
- Set the Server URL to your Klutch.sh app URL
- Configure branding options (organization name, logo)
- Set up SMTP for notifications if needed
- Configure allowed file types for transfers
Creating Organizations
- Navigate to Organization settings
- Create additional organizations for multi-tenant setups
- Configure organization-specific settings
Deploying Agents
To enable unattended access:
- Go to Downloads to get the client installer
- Deploy the agent to target machines
- 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.