Welcome to ServerPanel

Create your administrator account to get started.

Printed in the panel's log when it starts. On the server: docker compose logs app | grep "Setup code"
Enter a password
Notifications 4 new

Pending Updates

Home›Dashboard
Dashboard
Last updated just now
Servers
7
All online
Sites
34
3 need updates
Backups (24h)
34
100% success
SSL Certs
34
2 expiring soon
Updates
15
0 server · 7 site updates
Uptime Monitor
Loading...
—
Total Database
—
Redis Cache
—
Bandwidth / mo
—
Deploys Today
Sites Overview
34 sites · 7 servers
All
WordPress
Custom
🐳 Docker
Showing 5 of 34
Server Resources
Recent Activity
Bandwidth Overview
—
7d
30d
90d
SSL Certificate Expiry
Servers
Loading servers…
List
Cards
Spin Up a New Server
1 Provider
2 Connect
3 Review
Server
Online
Loading...
Overview
Sites
Services
Updates
Users
Firewall
Logs
Server Settings
Configure SSH credentials and server details
Server Details
Server name
Provider
Provider label
System
IP address · changing this reconnects the panel
SSH Credentials
Editing port, user or key changes how the panel connects. Save asks you to confirm.
SSH port
SSH username
Authentication method
Stored encrypted in the panel vault — the private key is never shown after saving.
Server identity
SSH host key · the panel only connects to the machine that shows this key
Loading…
Delete server

Removes this server from the panel. Sites and data on the host are untouched, but ServerPanel loses all management access. This cannot be undone.

You'll be asked to confirm before anything is deleted.
Not tested
All Sites
34 sites across 7 servers

Backups

Every backup uploads to all assigned destinations in parallel
SMTP Configuration
Server-level Postfix · Works for all apps · Auto-rollback on failure
Saved credentials
Provider accounts you can reuse across servers
Email queue
Pending outbound mail held in Postfix
Message
From → to
Size
Status
Change log
Recent SMTP configuration activity
Server assignments
Pick which saved credential each server uses
Applies each chosen credential over SSH.
SSL Certificates
All sites · Auto-renewal enabled
Monitoring
Loading monitoring config…
Live
Site uptime
Site
Status
Response
Uptime · 30 days
Last 30 days
Web Terminal
Secure browser SSH — full pty, real shell, no client
Connecting…
connecting…
… — —
History
snippets inserted this session
Vulnerability
Loading…
Bandwidth
Bytes served, measured from Nginx access logs · Collected hourly
7d
14d
30d
90d
Bandwidth Over Time
All sites combined
Top Sites by Bandwidth
Bandwidth by Server
Which machines are pushing the bytes
Settings
Panel configuration, security, and notifications
Profile
Email
Password
Two-Factor Auth
Off
Loading…
Login CAPTCHA
Off
Enable Google reCAPTCHA v2
Shows "I'm not a robot" on login page
Both keys, or neither
Active Sessions
Devices currently signed in to this account
—
Loading…
Panel
Panel Name
Panel URL
Timezone
Used for alert times and for the daily jobs in Scheduled Tasks. Backup schedules stay in UTC.
The name appears in the browser tab and on every alert
Users & Access
Panel logins, roles, and which sites or servers each person can reach
Loading users…
Notification Channels
Where alerts are sent. Each event below decides whether it goes out.
Email
Sent through the mail server in Health & Alerts, or the SMTP page's default
Send alerts to
Several addresses: separate them with commas.
Slack
An incoming webhook for a channel
Slack Webhook URL
Discord
A channel webhook (Server Settings → Integrations)
Discord Webhook URL
Telegram
A bot from @BotFather, and the chat it posts in
Bot Token
Chat ID
"Send test" uses what is typed here, so a channel can be checked before it is saved
Notification Preferences
Which events are sent to the channels above. The bell in the panel shows everything.
Loading…
Saved with the channels
Health Monitoring
…
Server Health Check Interval
How often to SSH into each server and verify it's running
Failure Threshold
How many consecutive failures before marking a server as down
Site Uptime Check Interval
How often to HTTPS-ping each site to check if it's responding
Server High Load limits
Alert when a server's reading reaches these, checked every 15 minutes (CPU is the average since the last check)
Alerts go to the channels in Notifications.
Panel Email Provider
How the panel sends its own email — alerts, password resets, reports. Left empty, the default server on the SMTP page is used. (Email for your sites is set up on the SMTP page.)
AWS SES
AWS SES
SendGrid
SendGrid
Mailgun
Mailgun
Custom
SMTP Host
SMTP Username / API Key
Port
Password / API Secret
From Address
Intervals, limits and the mail server save together
Scheduled Tasks
Storage Scan (Database + Redis)
Scans all database + Redis sizes (MySQL, PostgreSQL, MongoDB, Redis — host + Docker containers) daily, UTC time
Server Update Check
Daily at 5:00 AM UTC
Checks all servers for available package updates and CVE alerts
Apt Cache Cleanup
Weekly Sunday 4:00 AM UTC
Runs apt autoremove + clean on all servers to free disk space
Times are in the panel's timezone (General)
Cloud Providers
Loading…
Deployment Groups
No deployment groups. Create a cluster to deploy across multiple servers.
Container Registries
Accounts to pull private images — Docker Hub, GHCR, GitLab registry
No registries connected. Add Docker Hub, GHCR, or a custom registry.
Git Credentials
Tokens to clone private repos — GitHub, GitLab, Bitbucket
No Git credentials. Add GitHub/GitLab tokens for private repo access.
CDN & DNS Accounts
Keys to purge the CDN and issue SSL via DNS
Loading CDN accounts…
SSH Key Vault
Public keys to assign to SSH users on any server
Loading SSH keys...
App Templates
No custom templates. Create your own or import from a URL.
Vulnerability Scanner
API keys for the WordPress vulnerability database. Both providers can be active together.

File Manager

Browse and edit files over SSH
NameSizePermissionsModifiedActions
Select a server to browse files
Activity Live
Total events
0
Warnings · 24h
0
Completed · 24h
0
Failed · 24h
0
Showing 0 of 0 1 / 1

Event output