Package Panel Installation
Please see the Minimum Requirements section in the Panel Overview documentation.
With the APT/RPM repository, you can directly install Calagopus from your package manager. Select your package manager below:
Prerequisites
This guide assumes you have PostgreSQL and Redis installed on your server.
To install PostgreSQL, click me to view the guide to add the APT repository, and then install PostgreSQL:
sudo apt update
sudo apt install postgresql-18Then, start PostgreSQL when the server reboots:
sudo systemctl enable --now postgresqlTo install Redis, run the following commands:
sudo apt install lsb-release curl gpg
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
sudo chmod 644 /usr/share/keyrings/redis-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
sudo apt update
sudo apt install -y redisThen, start Redis when the server reboots:
sudo systemctl enable redis-server
sudo systemctl start redis-serverAdd the repository
The first step to install Calagopus is to add the Calagopus APT repository. If the APT repository is already added, you can skip this step. To do so, on your server run theses commands:
curl -fsSL https://packages.calagopus.com/pub.gpg -o /usr/share/keyrings/calagopus-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/calagopus-archive-keyring.gpg] https://packages.calagopus.com/deb stable main" | sudo tee /etc/apt/sources.list.d/calagopus.list
apt updateInstall Calagopus Panel
Now that the repository has been added, you can now install the Calagopus Panel package. You can do this by running the following commands:
apt install -y calagopus-panelDatabase Configuration
You will need a database setup and a user with the correct permissions created for that database before continuing any further. To do so, first login to PostgreSQL:
sudo -u postgres psqlThen, create the user and database and grant the user all permissions:
CREATE USER calagopus WITH PASSWORD 'yourPassword';
CREATE DATABASE panel OWNER calagopus;
GRANT ALL PRIVILEGES ON DATABASE panel TO calagopus;
exitConfigure Environment Variables
Before starting the Panel, you need to configure the environment variables. By default, the .env is not included in the package, you can download it manually by running the following commands:
mkdir -p /etc/calagopus
cd /etc/calagopus
curl -o .env https://raw.githubusercontent.com/calagopus/panel/refs/heads/main/.env.example
ls -lha # should show you the .env fileEdit the .env with your preferred text editor and modify the environment variables as needed. See the Environment Configuration documentation for more details on each variable. Make sure to configure PostgreSQL/Redis and your app encryption keys in the .env file.
To set the DATABASE_URL variable, replace the value below with your own values, for example: calagopus is the user, yourPassword is your user's password, and panel is your database name:
DATABASE_URL="postgresql://calagopus:yourPassword@localhost:5432/panel"REDIS_URL can stay to the default value redis://localhost, unless Redis is on another server, where you will have to modify this string.
You can use this script to set the APP_ENCRYPTION_KEY variable to a random value:
RANDOM_STRING=$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 16 | head -n 1)
sed -i -e "s/CHANGEME/$RANDOM_STRING/g" .envTest the configuration
To test the configuration, you can run:
calagopus-panelIf everything works correctly, the panel should not show any errors and will start the HTTP server, in which case you can kill the panel with Ctrl-C.
Install Panel as a Service
To ensure that the panel starts automatically on system boot, you can install it as a systemd service. Create a new service file by running:
calagopus-panel service-installThis will also start the service and enable it to start on boot. To check the status of the Panel service, you can run:
systemctl status calagopus-panelIf everything went well, you should be able to access the Panel by navigating to http://<your-server-ip>:8000 in your web browser and see the OOBE (Out Of Box Experience) setup screen.
