Automatic Installation

Guide to installing PteroCA using an automated Bash script that downloads and configures all required components.

To facilitate a seamless installation experience, we've developed an automated Bash installer that streamlines the entire setup process. It automatically detects your operating system, installs all required dependencies, configures your environment, and deploys the PteroCA panel with minimal user input.

Additionally, the installer now offers optional Pterodactyl Panel installation — fully automated, including default node creation, API key generation, and automatic integration with PteroCA. This allows you to set up a complete, production-ready environment in a single run.

🎥 Video Guide


1. Execute the installer

⚙️ PteroCA Plugin for Pterodactyl

If you’re using your own existing Pterodactyl instance, make sure the PteroCA Plugin is installed. Without it, certain PteroCA integration features will not be available. 📖 Follow this guide or watch the video tutorial to install the plugin manually.

🧩 If you’re installing Pterodactyl via our autoinstaller, the plugin is installed automatically - no manual action required.

Requirements & Supported OS

Operating System: Ensure your server is running a supported OS:

  • Ubuntu 24.04 (Noble)

  • Ubuntu 22.04 (Jammy)

  • Debian 13 (Trixie)

  • Debian 12 (Bookworm)

  • Debian 11 (Bullseye)

  • Rocky Linux 10

  • Rocky Linux 9

  • Rocky Linux 8

  • AlmaLinux 10

  • AlmaLinux 9

  • AlmaLinux 8

  • CentOS Stream 10

  • CentOS Stream 9

Root Access: The installation must be executed with root privileges.

1.1 Using Installer with Custom Parameters

If you prefer to run the installer manually or automate deployments (e.g. with Ansible, CI/CD, or VPS provisioning scripts), the Bash script supports advanced flags that allow full control over the installation process.

CLI Parameters Reference

Required Parameters (when using --yes non-interactive mode)

  • -p, --php-version <VERSION> – PHP version to install (8.2, 8.3, 8.4)

  • -d, --domain <DOMAIN> – Your panel's domain (e.g., panel.example.com) [optional - if empty, uses port 80]

  • -m, --config-method <METHOD> – Configuration method: web or cli

General Flags

  • --yes, -y – Enables non-interactive mode (no questions asked)

  • --ssl – Forces SSL certificate generation (domain must be live)

  • --no-ssl – Skips SSL (no HTTPS setup)

  • --staging – Uses staging Let's Encrypt certificates (for testing)

  • --disable-telemetry - Disables telemetry data collection during and after installation

Pterodactyl Installation Parameters

  • --install-pterodactyl – Installs Pterodactyl Panel alongside PteroCA

  • --pterodactyl-subdomain <SUBDOMAIN> – Subdomain for Pterodactyl (e.g., panel.example.com)

    • If not provided, Pterodactyl will use port 8000

  • --pterodactyl-admin-email <EMAIL> – Pterodactyl administrator email

  • --pterodactyl-admin-username <USERNAME> – Pterodactyl administrator username

  • --pterodactyl-admin-password <PASSWORD> – Pterodactyl administrator password

Usage Examples

1. Basic PteroCA Installation (PteroCA only)

2. PteroCA Installation without Domain (localhost)

3. PteroCA + Pterodactyl (with Pterodactyl subdomain)

4. PteroCA + Pterodactyl (Pterodactyl on port 8000)

5. Test Installation with Staging Certificates

Important Notes
  • Required in non-interactive mode (--yes):

    • --php-version

    • --domain (can be empty "" for localhost)

    • --config-method

  • Pterodactyl Installation:

    • If you don't provide --pterodactyl-subdomain, Pterodactyl will be accessible on port 8000

    • Admin parameters (--pterodactyl-admin-*) are optional - if not provided, they will be auto-generated

  • SSL:

    • --ssl requires a live domain pointing to your server

    • --staging is useful for testing (avoids Let's Encrypt rate limits)

    • Without --ssl or --no-ssl, the script will ask interactively

  • Domains:

    • PteroCA and Pterodactyl cannot use the same domain

    • Valid configuration example:

      • PteroCA: pteroca.example.com

      • Pterodactyl: panel.example.com or port 8000


2. Automatic Installation Process

🧩 Optional Pterodactyl Installation During the setup, the script may ask whether you want to install Pterodactyl Panel alongside PteroCA. If you choose y (yes), the installer will automatically handle the entire Pterodactyl setup — including all dependencies, configuration, node creation, and API key generation — and then import those details into PteroCA. The process closely mirrors the PteroCA installation flow, so you can follow the same steps confidently.

The script will guide you through the PteroCA installation process, allowing you to choose between two configuration methods:

  • Web Wizard – A user-friendly web-based setup wizard that simplifies the configuration process.

  • CLI Wizard – A fully interactive command-line setup for users who prefer a terminal-based approach.

Both methods will prompt you to enter essential details, including PHP version selection, domain configuration, Pterodactyl API credentials, and admin account credentials for PteroCA.

Example installation process workflow with Web Wizard
  1. Run the installer:

  1. Navigate to [yourdomain]/first-configuration in your browser. Select your preferred language and click "Start" to begin the setup process.

    Welcome page of web wizard
  2. Follow the guided steps to complete the configuration, providing details such as site settings, Pterodactyl API credentials, email configuration, and the credentials for the first admin account. If you encounter any issues filling in the required information, refer to the System Configuration guide for assistance.

Example installation process workflow with CLI wizard

Based on your inputs, the script will:

  • Install Dependencies: Set up necessary repositories and install required packages, including Nginx, PHP and MariaDB.

  • Configure Services: Set up and secure the database, configure the web server, and ensure all services are running correctly.

  • Deploy PteroCA: Download the latest version of PteroCA, configure environment settings, and set appropriate file permissions.

Upon successful installation, the script will provide: Access URL, Admin Credentials and Database Credentials.

If your PteroCA instance is running behind Cloudflare, you need to adjust your configuration to avoid CSRF and host validation issues. Please follow the instructions here: Trusted Proxies & Cloudflare.

More about the PteroCA configuration process during installation can be found in System Configuration.


Post-Installation Steps

After completing the installation, configure the following to ensure full functionality:

1. Install PteroCA Plugin for Pterodactyl

If you installed Pterodactyl using our autoinstaller, the plugin is already installed. Otherwise, follow the installation guide:

👉 Install PteroCA Plugin for Pterodactyl

2. Configure Allowed Origins (Console Access)

For the server console to work properly, you need to configure allowed_origins in your Pterodactyl Wings configuration.

This allows PteroCA to communicate with Pterodactyl Wings for console access and real-time server management.

👉 Configure Allowed Origins

You can configure allowed origins at any time - it doesn't need to be done immediately during installation.

3. Complete System Configuration

Configure your panel settings through the CLI wizard or Admin Panel:

👉 View all configuration options

Last updated