Foundations

These apps are more or less essential. You need Traefik for many other apps to run properly; you should also seriously think about backup if you do anything mission critical with this server or store data on it.

3: Setting Up Your Foundation

Before you can install your first application, we need to set up the basic infrastructure that Infinity Tools needs to work properly. Don't worry - Infinity Tools will handle most of this automatically!

This chapter also covers foundational apps that most Infinity Tools require—the most essential of them is Traefik, on which many other apps rely. You do not strictly need the back-tool Borgmatic, however, we highly recommend that you install it to automatically create backups of your data. And to use Borgmatic, you have to install Apprise, a notification system, which is why we also cover it in this chapter.

What We'll Set Up

In this chapter, we'll prepare:

Time needed: About 10-15 minutes

What is Docker? (Simple Explanation)

Docker is like a shipping container system for software. Just like how shipping containers make it easy to move goods around the world, Docker makes it easy to run applications on any computer.

Why we need it:

Think of it like this: Instead of installing WordPress directly on your server (which can be complicated), Docker runs WordPress in a container that has everything it needs already set up. If you install Portainer, you get a convenient web app to see what's going on with your Docker containers and administrate them.

Step 1: Run the Readiness Check

Infinity Tools has a built-in system that checks if everything is ready and installs what's missing. Let's run it!

Start Infinity Tools

First, make sure you're connected to your server via SSH, then start Infinity Tools:

sudo infinity-tools

What You'll See in the GUI

When you start Infinity Tools, you'll see a beautiful, modern interface with:

Don't worry if it looks complex! The GUI is designed to guide you through everything step by step.

What Happens Next

Infinity Tools will automatically run a "readiness check" that:

You'll see messages like:

♾️  INFINITY TOOLS READINESS CHECK

Ensuring all prerequisites are met...

This will check and install:
• Docker & Docker Compose
• Docker Network for services
• GUM for modern UI
• Dialog for compatibility
• System requirements

If Docker Needs to be Installed

If Docker isn't installed yet, you'll see a message asking if you want to install it:

🐳 DOCKER INSTALLATION REQUIRED

Infinity Tools requires Docker to run containerized services.

Docker will be installed and configured automatically.
This includes Docker Engine and Docker Compose.

⚠️  This requires internet connection and may take a few minutes.

Install Docker now?

Answer "Yes" to continue. The installation will take a few minutes.

Docker Network Setup

After Docker is installed, you'll be asked about setting up a network:

🌐 DOCKER NETWORK SETUP

Infinity Tools services need a Docker network to communicate.

This network allows containers to find each other by name
and enables features like Traefik reverse proxy.

Default network name: proxy

Press Enter to use the default network name "proxy" (recommended).

Step 2: Verify Everything is Working

After the readiness check completes, you should see:

✅ READINESS CHECK COMPLETE

All prerequisites are satisfied!
Infinity Tools is ready to use.

What Was Installed

If everything went well, you now have:

Step 3: Understanding What Happened

Docker Installation

Docker was installed and configured to:

Docker Network

The "proxy" network was created to:

Step 4: Optional - Basic Security Setup

Now that the basics are ready, you can optionally set up basic security. This is recommended but not required to get started.

What is a Firewall?

A firewall is like a security guard for your server. It controls which connections are allowed in and out.

Why it's important: Without a firewall, your server is like a house with all doors unlocked - anyone can try to access it.

Setting Up the Firewall

In the Infinity Tools menu, you'll see a "Security & Networking" section. You can set up the firewall later, but here's what it does:

For now: You can skip this and set it up later. Your server is reasonably safe as long as you keep your passwords strong.

Step 5: Understanding Your System

What's Running Now

Right now, your server has:

What's Next

You're now ready to install your first application! The most important one to install first is Traefik - it handles secure connections and routing for all your other applications.

Troubleshooting

Docker Installation Failed

If Docker installation fails:

Network Creation Failed

If the Docker network creation fails:

Can't Connect to Server

If you lose connection during setup:

Quick Reference

Check if Docker is running:

sudo systemctl status docker

Check Docker networks:

docker network ls

View Docker containers:

docker ps

Restart Docker if needed:

sudo systemctl restart docker

You're Ready!

Congratulations! You now have:

Next step: Install Traefik - the reverse proxy that will handle secure connections and routing for all your applications.

What You Learned

You're now ready to install your first application! In the next chapter, we'll install Traefik, which is essential for running other applications securely.


Next: Installing Traefik - Your Reverse Proxy (Chapter 4)

4: Traefik - Reverse Proxy (essential)

Now that your infrastructure is ready, it's time to install Traefik - the most important service you'll set up. Traefik handles secure connections and routing for all your other applications.

What is Traefik? (Simple Explanation)

Traefik is like a smart traffic director for your server. Think of it as a receptionist at a large office building who:

Why Traefik is essential:

Why Install Traefik First?

Traefik should be installed before any other application because:

Without Traefik: You'd have to manually configure SSL certificates and routing for each application - a complex and time-consuming process.

What You'll Need

Before installing Traefik, make sure you have:

About Domain Names

What is a domain name? It's like your website's address (e.g., mywebsite.com).

Why you need one: Traefik uses your domain name to create SSL certificates and route traffic. Without one, you can still use Traefik, but you'll get security warnings in your browser.

Examples of domain names:

Don't have a domain? That's okay! You can still install Traefik and add a domain later, or use your server's IP address directly.

Step 1: Start Infinity Tools

Make sure you're connected to your server via SSH, then start Infinity Tools:

sudo infinity-tools

Step 2: Navigate to Traefik Installation

In the Infinity Tools menu, you'll see several sections. Look for:

Use your arrow keys to navigate to this section and press Enter.

Using the Infinity Tools GUI

The Infinity Tools interface makes everything easy to find and use:

Look for the turquoise cursor - it shows exactly what you're about to select!

Step 3: Install Traefik

In the Security & Networking menu, you'll see:

Select "Install Traefik" and press Enter.

What Happens During Installation

Traefik installation will:

This usually takes 1-2 minutes.

Step 4: Configure Traefik

During installation, you'll be asked a few questions:

Email Address for SSL Certificates

You'll see a prompt like:

Enter email address for SSL certificates:
[admin@example.com]

What to enter: Use a valid email address you check regularly. This is used for SSL certificate notifications and warnings.

Examples:

Domain Name (Optional)

If you have a domain name, you'll be asked:

Enter your domain name (or press Enter to skip):
[myinfinitytools.com]

If you have a domain: Enter it here (e.g., myinfinitytools.com)

If you don't have a domain: Press Enter to skip - you can add this later

IPv6 Configuration

You might be asked about IPv6 support:

Do you want to enable IPv6 support?
Y) Yes - Enable both IPv4 and IPv6
N) No - IPv4 only (recommended for beginners)

For beginners: Choose "N" (No) - IPv4 only is simpler and works fine for most use cases.

Step 5: Wait for Installation

After answering the questions, Traefik will install and start. You'll see messages like:

📦 Installing Traefik...
🔧 Creating configuration...
🌐 Starting Traefik container...
✅ Traefik installed successfully!

Step 6: Verify Traefik is Working

After installation completes, let's make sure Traefik is running properly.

Check Traefik Status

In the Infinity Tools menu, go to:

You should see Traefik listed as "RUNNING" or "ACTIVE".

Using the Status Dashboard

The Status & Health section gives you a complete overview of your system:

Look for the green checkmarks - they indicate everything is working properly!

Check Docker Containers

You can also check by going to:

Look for a container named "traefik" - it should be running.

Understanding the Docker Info Screen

The Docker Info section shows you:

Green status means everything is working! Red or yellow means there might be an issue.

Step 7: Understanding What Was Created

Traefik installation creates several important files and configurations:

Configuration Files

Traefik stores its configuration in:

SSL Certificates

SSL certificates are stored in:

Docker Container

Traefik runs as a Docker container that:

Step 8: Test Traefik (If You Have a Domain)

If you configured a domain name, you can test Traefik by visiting your domain in a web browser.

What You Should See

When you visit your domain, you should see:

If You Don't Have a Domain

You can still test Traefik by visiting your server's IP address:

What's Next?

Congratulations! You now have Traefik installed and running. This means:

Ready for Applications

Now you can install any of the applications in Infinity Tools:

When you install these applications, they'll automatically work with Traefik to provide secure, domain-based access.

Troubleshooting

Traefik Won't Start

If Traefik fails to start:

SSL Certificate Issues

If SSL certificates aren't working:

Can't Access Traefik

If you can't access Traefik:

Quick Reference

Check Traefik status:

docker ps | grep traefik

View Traefik logs:

docker logs traefik

Restart Traefik:

docker restart traefik

Check SSL certificates:

ls -la /opt/speedbits/traefik/letsencrypt/

You're Ready!

Traefik is now installed and running! This is the foundation that makes all your other applications work securely and efficiently.

What you accomplished:

Next step: You can now install any application from the Infinity Tools menu. Each application will automatically work with Traefik to provide secure, domain-based access.

What You Learned

You now have a solid foundation for running secure, professional applications on your server!


Next: Installing Your First Application (Coming Soon)

5 Apprise - Notifications (optional, but essential for backups with Borgmatic)

Apprise sends notifications about your server and applications (e.g., backup success/failure). It supports email, Slack, Telegram, and 90+ providers. For detailed provider setup, see the official Apprise documentation.

Why Apprise?

Prerequisites

Step 1: Start Infinity Tools

sudo infinity-tools

Step 2: Install Apprise

  1. Go to 📱 APPLICATIONS
  2. Select Apprise
  3. Choose Install Apprise

Using the Infinity Tools GUI

Step 2.1: Choose SSL Mode

You’ll see three options. Here’s what each means and when to use it:

Simple rule of thumb: Use Traefik if you have a domain; use Standalone HTTPS for quick local use; avoid HTTP on the internet.

Step 2.2: If You Choose Traefik

  1. Enter your subdomain, e.g., notify.yourdomain.com
  2. Ensure the subdomain’s DNS A record points to your server (see Chapter 4.5)
  3. Infinity Tools will configure HTTPS automatically via Let’s Encrypt

After install: Your endpoint will be https://notify.yourdomain.com/notify

Step 2.3: If You Choose Standalone

  1. Pick a port (suggested defaults appear on screen)
    • HTTPS (self‑signed): e.g., 8099https://SERVER_IP:8099/notify
    • HTTP: e.g., 8098http://SERVER_IP:8098/notify
  2. Accept the browser warning if using self‑signed HTTPS

Where to Find the URL After Install

What Happens

Step 3: Configure a Notification

Set your first notification target (example: email). You can add more later.

Example: Email (SMTP)

Collect: SMTP host, username, password, from address.

Test a Notification

  1. Find your Apprise endpoint (e.g., http://apprise:8000/notify or your domain)
  2. Send a test:
    curl -X POST "http://apprise:8000/notify" \
      -d "title=Test" \
      -d "body=Hello from Apprise" \
      -d "url=YOUR_PROVIDER_URL"
  3. Confirm you received the notification

Where It’s Used

Troubleshooting

You're Ready

Apprise is now running. Next, install Borgmatic (Chapter 6) so your backups can send notifications.

6: Borgmatic - Backup System (optional, but you should have backup)

Borgmatic is an automated backup system that keeps your data safe by creating encrypted, compressed backups of all your applications and databases. It's like having a digital safety net that automatically saves copies of everything important. For comprehensive configuration options and advanced features, please refer to the official Borgmatic documentation.

What is Borgmatic? (Simple Explanation)

Borgmatic is like a smart, automated filing system that makes copies of all your important data. Think of it as having a personal assistant who:

Why Borgmatic is essential:

Think of it like this: If your server was a house, Borgmatic would be like having a professional photographer who takes a complete photo of every room every day, stores the photos safely, and can help you rebuild the house exactly as it was if something happens.

Interdependencies

Required: Borgmatic uses Apprise for notifications (success/failure/security alerts). Install Apprise first via 📱 APPLICATIONS → Apprise → Install.

Prerequisites

Before installing Borgmatic, make sure you have:

Why These Prerequisites Matter

Infinity Tools: Provides the management interface for Borgmatic

Docker: Runs Borgmatic in a secure container

Traefik: Provides secure access to backup management

Storage space: Backups need somewhere to be stored

Step 1: Start Infinity Tools

Make sure you're connected to your server via SSH, then start Infinity Tools:

sudo infinity-tools

Using the Infinity Tools GUI

When you start Infinity Tools, you'll see the main menu. Look for the 💾 BACKUP MANAGEMENT section - this is where Borgmatic is located.

Step 2: Navigate to Borgmatic

In the Infinity Tools menu:

  1. Use your arrow keys to navigate to 💾 BACKUP MANAGEMENT
  2. Press Enter to open the Backup Management menu
  3. Look for Borgmatic in the list
  4. Select it and press Enter

Understanding the Backup Management Section

The Backup Management section contains tools for protecting your data:

Look for the turquoise cursor - it shows what you're about to select!

Step 3: Install Borgmatic

When you select Borgmatic, you'll see installation options. Choose Install Borgmatic.

What Happens During Installation

Borgmatic installation will:

This usually takes 3-5 minutes.

Step 4: Configure Borgmatic

During installation, you'll be asked several questions:

Backup Schedule

You'll see a prompt like:

📅 Backup Schedule Configuration
=============================
How often should files be backed up?

1) Daily (default) - Once per day at 2:00 AM
2) Twice daily - Every 12 hours
3) Weekly - Once per week on Sunday

For beginners: Choose "1" (Daily) - This provides good protection without using too much storage.

Retention Policy

You'll be asked how long to keep backups:

📦 Retention Policy
================
How long should backups be kept?

1) Conservative (default) - 7 daily, 4 weekly, 6 monthly
2) Aggressive - 14 daily, 8 weekly, 12 monthly
3) Minimal - 3 daily, 2 weekly, 3 monthly

For beginners: Choose "1" (Conservative) - This keeps enough backups for recovery without using too much space.

Compression Settings

You'll be asked about compression:

🗜️  Compression Configuration
===========================
Choose compression algorithm:

1) zstd (default) - Best balance of speed and compression
2) lz4 - Fastest compression, larger files
3) zlib - Good compression, moderate speed
4) lzma - Best compression, slower

For beginners: Choose "1" (zstd) - This provides good compression without being too slow.

Security Passphrase

You'll be asked to create a passphrase for your backups:

🔐 Security Configuration
======================
Enter a strong passphrase for backup encryption:
[Enter your passphrase]

Important: This passphrase encrypts your backups. Choose something strong and save it safely!

Passphrase tips:

Example: MyBackup@2024!Secure#Data

Step 5: Wait for Installation

After answering the questions, Borgmatic will install and start. You'll see messages like:

📦 Installing Borgmatic...
🔧 Creating backup configurations...
🔐 Setting up encryption...
🛡️  Creating security monitoring...
📅 Setting up schedules...
✅ Borgmatic installed successfully!

Step 6: Understanding What Was Created

Borgmatic installation creates a sophisticated backup system with two types of backups:

File Backups

These backup all your application files:

Database Backups

These backup all your databases:

Security Features

Borgmatic includes advanced security:

Step 7: Verify Borgmatic is Working

Let's make sure Borgmatic is running properly.

Check Status in Infinity Tools

In the Infinity Tools menu, go to:

You should see Borgmatic listed as "RUNNING" or "ACTIVE".

Using the Status Dashboard

The Status & Health section shows you:

Look for the green checkmarks - they indicate everything is working properly!

Check Backup Status

You can also check by going to:

This will show you:

Step 8: Understanding Backup Storage

Borgmatic stores your backups in a special location:

Backup Location

Your backups are stored in:

Backup Structure

Your backup repository contains:

Step 9: Test Your First Backup

Let's run a test backup to make sure everything works:

Manual Backup Test

In the Infinity Tools menu, go to:

This will start a backup immediately and show you the progress.

What You'll See

During the backup, you'll see messages like:

Starting SpeedBits file backup...
Creating archive speedbits-files-server-2024-01-15-143000...
Backing up /opt/speedbits/vaultwarden...
Backing up /opt/speedbits/traefik...
File backup completed successfully

Understanding Backup Progress

The backup process shows:

What's Next?

Congratulations! You now have an automated backup system protecting all your data.

What You've Accomplished

Next Steps

Now you can:

Troubleshooting

Backup Not Running

If backups aren't running:

Backup Fails

If backups fail:

Can't Access Backups

If you can't access your backups:

Quick Reference

Check Borgmatic status:

docker ps | grep borgmatic

View backup logs:

docker logs borgmatic

Run manual backup:

docker exec borgmatic borgmatic --config /etc/borgmatic/borgmatic-files.yml create

List all backups:

docker exec borgmatic borg list /backups/borgmatic-repo

You're Ready!

Borgmatic is now installed and protecting your data! You have a professional-grade backup system that runs automatically and keeps your data safe.

What you accomplished:

Next step: You can now install your first application (Vaultwarden) knowing it will be automatically backed up and protected!

What You Learned

You now have enterprise-grade data protection running on your server!


Next: Installing Vaultwarden - Your Password Manager (Chapter 7)

7: Portainer – Docker Management Made Easy (optional but convenient)

Portainer gives you a friendly web interface to manage your Docker containers, images, volumes, and networks. Instead of typing commands in the terminal, you can click buttons and see everything visually. Think of it as a control panel for all your Docker applications.

For advanced features, team management, and detailed documentation, see the official Portainer documentation.

Why Portainer?

Prerequisites

Note: Portainer works fine without Traefik - you can access it directly via IP address and port. Traefik just makes it more secure and easier to access with a friendly domain name.

Step 1: Start Infinity Tools

sudo infinity-tools

Step 2: Install Portainer

  1. Go to 📱 APPLICATIONS
  2. Select Portainer
  3. Choose Install Portainer

Using the Infinity Tools GUI

Step 2.1: Choose SSL Mode

You'll see two options. Here's what each means:

Simple rule of thumb: Use Traefik if you have a domain and want the best experience; use Standalone HTTPS if you're just getting started or don't have a domain yet.

Step 2.2: If You Choose Traefik

  1. Enter your subdomain, e.g., portainer.yourdomain.com
  2. Ensure the subdomain's DNS A record points to your server (see Chapter 4.5)
  3. Infinity Tools will configure HTTPS automatically via Let's Encrypt

After install: Your Portainer will be available at https://portainer.yourdomain.com

Step 2.3: If You Choose Standalone

  1. Pick a port (default: 9443)
  2. Your Portainer will be available at https://SERVER_IP:9443
  3. When you first visit, accept the browser security warning (click "Advanced" → "Proceed")

What Happens During Installation

Step 3: First-Time Setup (IMPORTANT!)

⚠️ CRITICAL: Portainer requires you to create admin credentials on your FIRST login. There is no default password!

Step 3.1: Open Portainer

  1. Open the access URL shown after installation in your browser
  2. If using Traefik: Wait 30-60 seconds for SSL certificate generation
  3. If using Standalone: Accept the browser security warning

Step 3.2: Create Admin Account

You'll see a screen: "Create the first administrator user"

  1. Username: Choose any username (many people use "admin")
  2. Password: Enter a STRONG password (minimum 12 characters)
  3. Click "Create user"

⚠️ WRITE DOWN YOUR CREDENTIALS IMMEDIATELY!

This is your ONLY chance to set the initial password. There is NO "forgot password" option on first setup. If you forget it, you'll need to reset Portainer completely (see Troubleshooting below).

Step 3.3: Connect to Docker

  1. After creating your account, you'll see: "Get Started"
  2. Click "Get Started"
  3. Select "Docker" environment
  4. Click "Connect"

✅ Done! You'll immediately see all your Docker containers, images, volumes, and networks.

What You Can Do in Portainer

Container Management

Image Management

Stack Deployment

Monitoring

Volume and Network Management

Security Recommendations

Portainer has FULL access to your Docker system, so it's important to protect it:

Troubleshooting

Forgot Your Password?

If you forgot your Portainer admin password, you'll need to reset it completely:

  1. Stop Portainer:
    cd /opt/speedbits/portainer
    docker compose down
  2. Delete the Portainer database:
    rm -rf /opt/speedbits/portainer/data
  3. Restart Portainer:
    cd /opt/speedbits/portainer
    docker compose up -d
  4. Open Portainer again and create a new admin account

⚠️ WARNING: This deletes ALL Portainer settings (users, preferences, etc.), but your Docker containers are NOT affected.

Can't Access Portainer

Portainer Shows No Containers

Where to Find Portainer After Install

You're Ready!

Portainer is now installed and ready to use. You can manage all your Docker containers visually from your browser. This makes it much easier to work with your Infinity Tools applications!

Next steps: Use Portainer to monitor your containers, view logs, and manage your Docker environment. You can continue installing other Infinity Tools applications - Portainer will help you keep track of everything.