xyroPanel Simple Installation Brief

Install target:
- Ubuntu, Debian, AlmaLinux, or Rocky Linux VPS
- Run over SSH as root or with sudo
- Recommended panel domain: xyro.yourdomain.com
- Public panel URL after install: https://xyro.yourdomain.com:8688

Default ports:
- 3001: private local Next.js app, bound to 127.0.0.1 only
- 8686: public HTTP redirect port
- 8688: public HTTPS panel port
- 80: Let's Encrypt validation and redirect handling

Install command:

curl -fsSL https://install.xyropanel.com/install.sh | bash

If the server has a valid FQDN hostname, xyroPanel will use it automatically.
For example, a server hostname of xyro.yourdomain.com opens the panel at:

https://xyro.yourdomain.com:8688

If the hostname is not a usable FQDN, xyroPanel falls back to the server IP:

https://SERVER_IP:8688

Optional explicit domain install:

curl -fsSL https://install.xyropanel.com/install.sh | \
  XYROPANEL_DOMAIN=xyro.yourdomain.com \
  XYROPANEL_EMAIL=admin@yourdomain.com \
  bash

Testing from this local build:

Upload public/install.sh to your server, then run:

sudo bash install.sh

Or run it with a domain:

sudo XYROPANEL_DOMAIN=xyro.yourdomain.com \
  XYROPANEL_EMAIL=admin@yourdomain.com \
  bash install.sh

After installation:
- Open https://xyro.yourdomain.com:8688
- Complete first-run owner setup
- Configure modules after login, such as Enom, bunny.net, Stripe, PayPal, backup storage, Google Mail, Zoho Mail, and 2FA

Notes:
- The installer does not ask for payment, registrar, DNS, backup, or email-provider credentials.
- Those credentials are entered securely inside the xyroPanel Modules and Settings pages after login.
- Fresh product installs start empty, with no demo clients, sites, domains, invoices, pricing, or users.
- Set XYROPANEL_AUTO_HOSTNAME=0 if you do not want hostname auto-detection.
- The control-panel server installs and enrolls its local xyroPanel agent by default so health, telemetry, and OS update checks work immediately.
- Set XYROPANEL_INSTALL_AGENT=0 only if you want to enroll every server manually after login.
- Ubuntu/Debian Docker Compose package names vary by release. The installer automatically chooses docker-compose-plugin, docker-compose-v2, or docker-compose when available.
- The installer downloads the app release archive from https://install.ashtek.net/releases/xyropanel-latest.tar.gz by default, so it does not need GitHub credentials.
- The release archive is packaged without macOS extended metadata, and npm install runs without audit/funding notices during server installation.
