Deploying Websoft9
Introduction
Websoft9 is a self-hosted application management platform that simplifies deploying and managing open-source applications. It provides a marketplace of pre-configured applications that can be deployed with a few clicks, along with tools for monitoring, backup, and maintenance.
Built to work with Docker, Websoft9 acts as an application orchestration layer that makes it easy for teams to self-host various software without deep DevOps expertise.
Key features of Websoft9 include:
- Application Marketplace: Deploy from hundreds of pre-configured applications
- One-Click Deployment: Simple deployment without manual configuration
- Unified Management: Manage all applications from a single dashboard
- Automatic Updates: Keep applications updated with ease
- Backup Management: Schedule and manage application backups
- Domain Management: Configure custom domains for applications
- SSL Certificates: Automatic HTTPS certificate management
- Resource Monitoring: Track CPU, memory, and disk usage
- Multi-User Support: Team access with role-based permissions
- Docker-Based: All applications run in isolated containers
This guide walks you through deploying Websoft9 on Klutch.sh using Docker for application management.
Prerequisites
Before deploying Websoft9 on Klutch.sh, ensure you have:
- A Klutch.sh account
- A GitHub account with a repository for your configuration
- Basic familiarity with Docker concepts
Important Considerations
Websoft9 is designed to manage Docker containers and requires Docker socket access. In cloud environments like Klutch.sh, this has limitations:
- Docker-in-Docker: May require privileged container access
- Application Networking: Applications deployed by Websoft9 need network configuration
- Resource Allocation: Consider resources needed for both Websoft9 and managed apps
For full functionality, Websoft9 is best deployed on dedicated infrastructure with full Docker access.
Repository Structure
Create a GitHub repository with the following structure:
websoft9-deploy/├── Dockerfile└── .dockerignoreDockerfile
Create a Dockerfile in your repository:
FROM websoft9/websoft9:latest
# Web interface portEXPOSE 9000
# The base image handles the entrypointEnvironment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
ADMIN_PASSWORD | Yes | - | Admin password |
DOMAIN | No | - | Public domain for the platform |
Deployment on Klutch.sh
- Push your Dockerfile to your GitHub repository.
- Log in to Klutch.sh and create a new project.
- Create a new app within your project and connect your GitHub repository containing the Dockerfile.
- Configure the deployment settings: - Select **HTTP** as the traffic type - Set the internal port to **9000**
- Add environment variables: - `ADMIN_PASSWORD`: Your admin password (mark as sensitive) - `DOMAIN`: Your app domain
- Attach persistent volumes: - Mount path: `/data` - Recommended size: 50 GB - Purpose: Application data and configuration
- Click **Deploy** and wait for the build to complete.
- Access your Websoft9 dashboard at the provided URL.
Post-Deployment Configuration
After deployment:
- Log in with your admin credentials
- Explore the application marketplace
- Deploy applications as needed
- Configure backups and monitoring
Troubleshooting
Applications Not Starting
Verify Docker access is properly configured and resources are available.
Dashboard Not Loading
Check deployment logs for startup errors.