Skip to content

Installation

This guide walks you through installing BadgerPanel on a fresh server. The entire process is handled by a single command that takes care of everything automatically.


System Requirements

Hardware

ResourceMinimumRecommended
CPU2 cores4 cores
RAM4 GB8 GB
Disk20 GB SSD50 GB+ SSD
Network100 Mbps1 Gbps

Software

RequirementDetails
Operating SystemUbuntu 22.04 LTS (or any modern Linux with systemd)
Domain NameA valid domain with an A record pointing to your server
Ports80 (HTTP) and 443 (HTTPS) must be open and not in use

TIP

You do not need to install Docker yourself. The installer will detect if Docker and Docker Compose are missing and install them automatically.


Run the Installer

Run the following command, replacing YOUR_LICENSE_KEY with the license key provided to you:

bash
curl -fsSL https://activate.badgerpanel.com/setup | bash -s -- YOUR_LICENSE_KEY

This single command handles the entire installation from start to finish. You will be prompted for a few details during the process (see below).


What the Installer Does

The installer runs through the following steps automatically:

StepDescription
1. Pre-flight checksDetects your system, checks ports are available, and verifies minimum requirements
2. Docker installationInstalls Docker and Docker Compose if not already present on the system
3. Registry authenticationUses your license key to authenticate and pull the BadgerPanel container images
4. Deployment filesWrites the Docker Compose configuration, Nginx config, and all supporting files
5. Domain & SSLPrompts for your domain and sets up Let's Encrypt HTTPS certificates
6. Credential generationGenerates secure passwords for the database, Redis, MinIO, and JWT signing
7. Service startupPulls all images, starts the full stack, and waits for services to become healthy
8. Admin accountPrompts you to create your initial administrator account
9. License activationConfirms your license activation with the BadgerPanel activation server

Interactive Prompts

During installation you will be asked to provide:

  • Domain name — the domain your panel will be accessible at (e.g. panel.example.com)
  • Let's Encrypt email — for SSL certificate notifications (optional, can leave blank)
  • Admin username — your initial administrator username
  • Admin email — your administrator email address
  • Admin password — your administrator password (entered securely, not displayed)

Credentials File

After installation, your credentials and connection details are saved to ~/badgerpanel/.credentials. This file contains:

  • Admin login details
  • Database connection information
  • Redis and MinIO credentials
  • JWT secret
  • Internal service keys

WARNING

Keep this file safe. You will need it if you ever migrate the panel to a new server. Do not share it publicly.


Existing Installation Detection

If the installer detects an existing BadgerPanel installation in ~/badgerpanel, it will prompt you to choose:

  • Update — pulls the latest images and restarts services while preserving your data, configuration, and credentials
  • Fresh install — removes the existing installation and starts from scratch (all data will be lost)
  • Cancel — exits without making any changes

If you are upgrading, choose the update option. Your servers, users, and settings will be preserved.


Services Deployed

The installer sets up the following services via Docker Compose:

ServiceContainerPurpose
Nginxbadger-nginxReverse proxy with SSL termination, WebSocket support
APIbadger-apiGo backend API server with automatic database migrations
Webbadger-webNext.js frontend application
MySQLbadger-mysqlPrimary database (MySQL 8.0)
Redisbadger-redisSession storage, caching, rate limiting
MinIObadger-minioS3-compatible object storage for backups and file uploads

Next Steps

Once installation completes, open your panel domain in a browser and log in with the admin credentials you created. See Your First Server to set up your first game server.

BadgerPanel Documentation