1: Getting Started
This guide is designed for IT professionals who are familiar with Linux, servers, networking, and modern DevOps practices. If you're comfortable with Docker, containerization, and command-line administration, you're in the right place.
Prerequisites
Before installing Infinity Tools, ensure you have:
Required
- ✅ Linux Server - Any modern Linux distribution (Ubuntu, Debian, CentOS, Fedora, Arch, etc.)
- ✅ Root/Sudo Access - Full administrative privileges
- ✅ Internet Connection - Required for downloading dependencies and Docker images
- ✅ Minimum 2GB RAM - Recommended 4GB+ for running multiple services
- ✅ 20GB+ Storage - For applications and data (more recommended for production)
Technical Knowledge Assumed
This guide assumes you're familiar with:
- Linux command-line operations
- Docker and Docker Compose
- Basic networking concepts (ports, DNS, reverse proxies)
- SSL/TLS certificates and Let's Encrypt
- SSH connections and key management
- System administration basics
Server Setup Options
Option 1: Self-Hosted Server
If you have physical hardware or are running a virtualization platform:
Requirements:
- Physical server or VM with a supported Linux distribution
- Direct internet access or through a router/firewall
- Ability to configure DNS records (for SSL certificates)
Considerations:
- Network configuration and firewall rules
- Static IP address recommended
- Domain name for SSL certificates (optional but recommended)
Option 2: Cloud/VPS Provider
Most IT professionals will use a cloud provider. Popular options include:
Hetzner Cloud (Recommended)
- Excellent price-to-performance ratio
- EU-based with strong data protection
- Simple interface, great for automation
- Starting at ~€4/month for basic instances
DigitalOcean
- Developer-friendly interface
- Strong documentation and community
- Good performance and reliability
- Starting at $6/month for basic droplets
Other Options:
- AWS EC2, Google Cloud Platform, Azure (more complex but powerful)
- Linode, Vultr, Scaleway (good alternatives)
- Any provider that offers a Linux server with root access
Server Configuration
Regardless of your hosting choice, configure your server with:
- Fresh Linux Installation
- Clean install of your preferred distribution
- All security updates applied (
apt update && apt upgradeor equivalent)
- Non-Root User with Sudo
- Create a user account with sudo privileges
- SSH key authentication configured (password auth disabled recommended)
- Basic Firewall
- At minimum, allow SSH (port 22) and HTTP/HTTPS (ports 80/443)
- UFW or firewalld configured and enabled
- DNS Configuration (for SSL certificates)
- Domain name pointing to your server's IP address
- If using Traefik, ensure DNS A record is configured before installation
System Requirements
Minimum Specifications
- CPU: 1 core (2 cores recommended)
- RAM: 2GB (4GB+ recommended)
- Storage: 20GB SSD (more for production workloads)
- Network: Stable internet connection
Recommended for Production
- CPU: 2-4 cores
- RAM: 4-8GB
- Storage: 50GB+ SSD with backup storage
- Network: 100Mbps+ connection
Storage Considerations
Infinity Tools stores data in /opt/speedbits/ by default:
- Application data volumes
- Database files
- Configuration files
- SSL certificates
Ensure sufficient disk space and consider:
- Using separate volumes for databases
- Regular backup strategies
- Monitoring disk usage
What You'll Need Before Installation
1. Domain Name (Optional but Recommended)
For automatic SSL certificates via Let's Encrypt:
- A domain name you control
- Ability to create DNS A records
- DNS pointing to your server's IP address
Without a domain: You can still use Infinity Tools with self-signed certificates or IP-based access, but SSL won't be automatically trusted by browsers.
2. Email Address
For SSL certificate notifications and administrative purposes:
- Valid email address (for Let's Encrypt certificate warnings)
- Consider a dedicated email for server administration
3. SSH Access
Ensure you can:
- Connect to your server via SSH
- Use sudo/root privileges
- Transfer files if needed (SCP/SFTP)
Next Steps
Once your server is ready:
- SSH into your server
- Download or transfer Infinity Tools installer
- Run the installer (covered in the next article)
The installation process will:
- Check system readiness
- Install Docker if needed
- Set up Infinity Tools in
/opt/InfinityTools/ - Create the
infinity-toolscommand for easy access
Quick Reference
Installation Path: /opt/InfinityTools/
Command: sudo infinity-tools
Data Directory: /opt/speedbits/
Configuration: /opt/speedbits/_configuration/
Common Considerations
Firewall Ports
Default ports used by Infinity Tools:
- 80/443 - HTTP/HTTPS (Traefik)
- 22 - SSH
- Various - Application-specific ports (configurable)
Docker Resources
Docker will be installed if not present. Consider:
- Docker daemon configuration
- Storage driver selection
- Network configuration
- Resource limits
Backup Strategy
Infinity Tools includes Borgmatic for backups, but you should also:
- Plan for backup storage location
- Configure retention policies
- Test restore procedures
Troubleshooting
Common Issues
Port conflicts: Check for existing services using ports 80/443 or other expected ports.
Network issues: Ensure firewall allows necessary traffic and DNS is properly configured.
Ready to Install?
Once your server meets these prerequisites, proceed to the installation guide which will cover:
- Establishing SSH connection
- Getting Infinity Tools onto your server
- Running the installer
- Initial configuration
Next: Installation and Initial Setup Guide (Article 2)
No comments to display
No comments to display