Aether Panel Documentation
Getting Started - Complete Guide
Welcome to Aether Panel
This guide will take you step by step from installation to having your first server running. Follow each section in order for a successful setup.
System Requirements
Before starting, make sure your system meets the following requirements:
- Operating System: Ubuntu 22.04/20.04, Debian 11/10, CentOS 9/8 Stream, Fedora 40/43.
- Virtualization: KVM, OpenVZ, LXC or dedicated server (for nodes).
- Software: Docker and Docker Compose (v20.10.0+, optional).
- Hardware: 2 CPU vcores, 2GB RAM, 5GB storage (minimum).
It is important to note that Aether Panel requires at least 2 CPU vcores, 2GB RAM, and 5GB storage just to function correctly. These requirements do not cover the usage of the services it will manage in the panel.
- Operating System: Ubuntu 22.04/20.04, Debian 11/10, CentOS 9/8 Stream, Fedora 40/43.
- Virtualization: KVM, OpenVZ, LXC or dedicated server (for nodes).
- Software: Docker and Docker Compose (v20.10.0+, optional).
- Hardware: 2 CPU vcores, 4GB RAM, 20GB storage.
Make sure the following ports are available:
- 8080/TCP: Web panel (HTTP/HTTPS) - Required
- 5657/TCP: SFTP for file transfer - Required
- 8081/TCP: Gatus (uptime monitoring) - Optional but recommended
- 22/TCP: SSH for administration - Recommended to change to non-standard port
Before installing, verify that you have root or sudo access:
sudo whoamiVerify that ports are free:
# Check port 8080
sudo netstat -tuln | grep 8080
# Check port 5657
sudo netstat -tuln | grep 5657
# Check port 8081
sudo netstat -tuln | grep 8081If any port is in use, stop the service or change the port in the configuration.
Step-by-Step Installation
Installation Methods
Aether Panel can be installed in three different ways. Choose the one that best suits your needs:
- Automatic Installation with Script (Recommended): The easiest and fastest method
- Docker Installation: Ideal for containerized environments
- Manual Installation: For advanced users who want full control
Method 1: Automatic Installation with Script
This is the most recommended method. The script detects your operating system and installs everything automatically.
Run the following command as root or with sudo to start the installation:
bash <(curl -s https://install.aetherpanel.es/install.sh)Or download the script first and then run it:
# Download the script
wget https://install.aetherpanel.es/install.sh
# Give execution permissions
chmod +x install.sh
# Run as root
sudo bash install.sh- Automatically detect your operating system (Ubuntu, Debian, Fedora, CentOS, RHEL)
- Install all necessary dependencies (Go, Node.js, Yarn, etc.)
- Configure the firewall and open necessary ports
- Clone the repository from GitHub
- Compile the frontend and backend
- Configure Nginx as reverse proxy
- Create the systemd service for automatic execution
- Allow you to configure domain and SSL with Let's Encrypt
During installation, the script will ask you:
- Installation type: With Docker or without Docker?
- Domain or IP: Do you want to use a domain or just IP?
- SSL: Do you want to configure SSL with Let's Encrypt? (only if using domain)
- Ports: Do you want to change the default ports? (optional)
Method 2: Docker Installation
If you prefer to use Docker, you can deploy Aether Panel with Docker Compose. This method is ideal if you are already familiar with Docker.
Make sure you have Docker and Docker Compose installed:
# Verify Docker
docker --version
# Verify Docker Compose
docker-compose --versionIf you don't have Docker installed:
Ubuntu/Debian:
# Ubuntu/Debian
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.shFedora/RHEL/CentOS:
# Fedora/RHEL/CentOS
sudo dnf install -y docker docker-compose
sudo systemctl enable docker
sudo systemctl start docker1. Clone the repository
git clone https://github.com/Aether-Panel/Panel.git
cd SkyPanelThis will download all the panel source code.
2. Configure database (optional)
If you want to use external MySQL, edit config.docker.json:
{
"panel": {
"database": {
"dialect": "mysql",
"url": "user:password@tcp(IP:3306)/database?charset=utf8mb4&parseTime=true"
}
}
}If you use the MySQL from docker-compose.yml, you don't need to change anything.
3. Build the Docker image
docker-compose buildThis process may take several minutes the first time, as it downloads dependencies and compiles the panel.
4. Start the containers
docker-compose up -dThe -d flag runs the containers in the background (detached mode).
5. Verify that containers are running
docker-compose psYou should see the 'skypanel' and 'skypanel-mysql' containers (if you configured MySQL) with 'Up' status.
6. View logs (optional)
docker-compose logs -fPress Ctrl+C to exit the logs.
The docker-compose.yml includes:
- MySQL/MariaDB service for the database
- SkyPanel service with all necessary ports
- Persistent volumes for data and configuration
- Health checks to verify service status
Method 3: Manual Installation (Without Docker)
To install manually without Docker, you need to compile the panel yourself. This method gives you full control over the process.
Ubuntu/Debian
# Update system
sudo apt update && sudo apt upgrade -y
# Install basic dependencies
sudo apt install -y git build-essential curl wget sqlite3
# Install Go 1.24.4
wget https://go.dev/dl/go1.24.4.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.4.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
# Verify Go
go version
# Install Node.js 22
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
# Install Yarn
sudo npm install -g yarn
# Verify installations
node --version
yarn --versionFedora/RHEL/CentOS
# Update system
sudo dnf update -y
# Install basic dependencies
sudo dnf install -y git gcc make curl wget sqlite
# Install Go 1.24.4
wget https://go.dev/dl/go1.24.4.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.4.linux-amd64.tar.gz
echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
source ~/.bashrc
# Install Node.js 22
curl -fsSL https://rpm.nodesource.com/setup_22.x | sudo bash -
sudo dnf install -y nodejs
# Install Yarn
sudo npm install -g yarn1. Clone the repository
git clone https://github.com/Aether-Panel/Panel.git
cd SkyPanel2. Compile the frontend
cd client/frontend
yarn install
yarn buildThis will compile the Vue.js web interface.
3. Compile the backend
cd ../..
go mod download
go build -o skypanel ./cmdThis will create the executable binary 'skypanel'.
4. Create directory structure
sudo mkdir -p /etc/skypanel
sudo mkdir -p /var/lib/skypanel
sudo mkdir -p /var/log/skypanel
sudo mkdir -p /var/www/skypanel5. Copy compiled files
sudo cp -r client/frontend/dist/* /var/www/skypanel/
sudo cp skypanel /usr/local/bin/
sudo chmod +x /usr/local/bin/skypanel6. Create configuration file
sudo tee /etc/skypanel/config.json > /dev/null <<EOF
{
"logs": "/var/log/skypanel",
"panel": {
"database": {
"dialect": "sqlite3",
"url": "file:/var/lib/skypanel/database.db?cache=shared"
},
"web": {
"files": "/var/www/skypanel"
},
"gatus": {
"enable": true
}
},
"daemon": {
"data": {
"root": "/var/lib/skypanel"
}
}
}
EOF7. Create system user
sudo useradd -r -m -d /var/lib/skypanel -s /bin/bash skypanel
sudo chown -R skypanel:skypanel /var/lib/skypanel /var/log/skypanel8. Create systemd service
sudo tee /etc/systemd/system/skypanel.service > /dev/null <<EOF
[Unit]
Description=Aether Panel - Server Management Panel
After=network.target
[Service]
Type=simple
User=skypanel
WorkingDirectory=/var/lib/skypanel
ExecStart=/usr/local/bin/skypanel run
Restart=always
RestartSec=10
StandardOutput=journal
StandardError=journal
[Install]
WantedBy=multi-user.target
EOF
sudo systemctl daemon-reload
sudo systemctl enable skypanelInstallation Verification
After installing, verify that everything is working correctly:
# Check service status
sudo systemctl status skypanel
# View logs in real-time
sudo journalctl -u skypanel -f# Check container status
docker-compose ps
# View logs
docker-compose logs -f skypanel# Verify that ports are listening
sudo netstat -tuln | grep -E '8080|5657|8081'
# Or use ss
sudo ss -tuln | grep -E '8080|5657|8081'# From the server
curl http://localhost:8080
# Or from your browser
# http://YOUR_IP:8080# Verify that Gatus is running
curl http://localhost:8081
# Or from your browser
# http://YOUR_IP:8081First Access and Initial Configuration
Once installation and verification are complete, it's time to access the panel and configure it for the first time.
Open your browser and access:
- Con IP: http://YOUR_IP:8080
- Con dominio: https://your-domain.com (if you configured domain and SSL)
You will be greeted by the login screen.
Before you can log in, you need to create an administrator user using the CLI.
If you installed with Docker, run the commands inside the container:
# Enter the container
docker exec -it skypanel sh
# Create admin user
./SkyPanel/bin/SkyPanel user add --username admin --email admin@example.com --adminIf you installed natively, run directly:
sudo -u skypanel /usr/local/bin/skypanel user add --username admin --email admin@example.com --adminOr from the installation directory:
./skypanel user add --username admin --email admin@example.com --adminThe system will ask you for a password. Choose a secure password.
Command Parameters
- --username: Username for login
- --email: Email address
- --admin: Grants full administrator permissions
Now you can log in to the panel:
- Open http://YOUR_IP:8080 in your browser
- Enter the username you created
- Enter the password
- Click 'Log In'
To see all available commands from the Aether Panel CLI:
./skypanel --helpOr from the Docker container:
docker exec skypanel ./SkyPanel/bin/SkyPanel --helpUser Management
./skypanel user add --username USER --email EMAIL --admin./skypanel user list./skypanel user delete --email EMAIL./skypanel user password --email EMAIL --password NEW_PASSWORD
Database Management
./skypanel db migrate (update database schema)./skypanel db upgrade (upgrade to new version)
Run Panel
./skypanel run (start panel in foreground)./skypanel version (view version)
If you don't have the ports enabled in the firewall, the panel will not be accessible from outside the server.
Ubuntu/Debian (UFW)
# Enable UFW if not active
sudo ufw enable
# Allow necessary ports
sudo ufw allow 8080/tcp
sudo ufw allow 5657/tcp
sudo ufw allow 8081/tcp
# Verify rules
sudo ufw statusFedora/RHEL/CentOS (firewalld)
# Start firewalld if not active
sudo systemctl start firewalld
sudo systemctl enable firewalld
# Allow necessary ports
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=5657/tcp
sudo firewall-cmd --permanent --add-port=8081/tcp
# Apply changes
sudo firewall-cmd --reload
# Verify rules
sudo firewall-cmd --list-portsOnce you have logged in, configure the basic settings:
Basic Configuration
- Go to Settings in the menu
- Configure the panel URL (e.g., http://YOUR_IP:8080 or https://your-domain.com)
- Configure the administrator email
- Configure the company/organization name
- Save changes
Configure Nodes
If you installed on the same server where servers will run (local node), you don't need to configure anything else. The local node is configured automatically.
If you want to use remote nodes:
- Go to Admin → Nodes
- Click 'Create Node'
- Enter the remote node IP
- Enter the daemon port (default 5656)
- Enter the daemon authentication token
- Verify the connection
- Save the node
Configure Discord (Optional)
To receive notifications on Discord:
- Go to Settings → Notifications
- Enter the Discord webhook URL
- Configure the types of notifications you want to receive
- Save changes
To create a Discord webhook:
- Go to your Discord server
- Channel Settings → Integrations → Webhooks
- Create a new webhook
- Copy the webhook URL
Now you're ready to create your first server:
- Go to the Servers section
- Click 'Create Server'
- Select the node where it will run (or use the local node)
- Choose a template (e.g., Minecraft Java Edition)
- Configure the server name
- Configure the server port
- Adjust resources (RAM, CPU) if necessary
- Click 'Create'
- Wait for the server to install
- Click 'Start' to boot the server
Congratulations! You now have your first server running on Aether Panel.
Installation Summary
If you have followed all the steps, you should have:
- ✓Aether Panel installed and running
- ✓Administrator user created
- ✓Firewall configured
- ✓Panel accessible at http://YOUR_IP:8080
- ✓Gatus running at http://YOUR_IP:8081
- ✓Basic configuration completed
- ✓First server created (optional)
Now that you have the panel running, you can:
- Explore all panel functionalities
- Create more servers of different types
- Configure Database Hosts for MySQL databases
- Add additional users with specific permissions
- Configure automatic backups
- Explore the API for automation
- Read the complete documentation in other sections
If you encounter problems during installation:
- Review the Troubleshooting section in the documentation
- Check the panel logs
- Consult the FAQ for common issues
- Join the community Discord for help
Advanced Panel Configuration
The main configuration file is located at:
- Nativo: /etc/skypanel/config.json (native installation)
- Docker: /etc/SkyPanel/config.json (inside Docker container)
You can edit this file to customize the panel configuration.
Aether Panel supports SQLite (default) and MySQL/MariaDB.
SQLite (Default)
SQLite is configured automatically and requires no additional configuration. It's ideal for small installations.
MySQL/MariaDB
To use MySQL, edit the configuration file:
{
"panel": {
"database": {
"dialect": "mysql",
"url": "user:password@tcp(host:3306)/database?charset=utf8mb4&parseTime=true"
}
}
}Make sure the database and user exist before starting the panel.
The default ports are:
- 8080: Web panel (HTTP)
- 5657: SFTP for file transfer
- 8081: Gatus (uptime monitoring)
You can change these ports by editing the configuration file or environment variables.
Gatus is enabled by default and automatically monitors:
- The main panel (http://localhost:8080/api/config)
- All configured nodes
- The uptime and status of each service
You can access the Gatus dashboard at http://YOUR_IP:8081
Configuration File
The Gatus configuration is located at /var/lib/SkyPanel/gatus/config.yaml and is automatically updated when you add or remove nodes.
No olvides que Aether Panel es un proyecto en desarrollo open source, si tienes alguna duda o problema al instalar o el comando del instalador no funciona puedes contactarnos en el Discord de Aether Panel.
