[[目錄]]
Pterodactyl Panel 設計為在您自己的網頁伺服器上運行。您需要擁有伺服器的 root 存取權才能運行和使用此面板。
您應該了解如何閱讀文件以使用此面板。我們花了很多時間詳細說明如何安裝或升級我們的 軟體;花一些時間閱讀,而不是複製和貼上,然後在事情不起作用時抱怨。這個面板可以 不作為運行伺服器的拖放服務而存在。這是一個高度複雜的系統,需要多個依賴項和 管理員願意花一些時間學習如何使用它。 **如果您希望在不了解的情況下安裝它 基本的 Linux 系统管理,你现在应该停下来转身。 **
::: 提示 正在尋找易於設定的東西? WISP (opens new window) 是一款由 Pterodactyl 提供支援的 SaaS,適合企業和個人使用。提供所有功能,無需設定麻煩,並且與翼龍蛋完全相容。與 MultiCraft 或 TCAdmin 相當,同時提供新的獨特功能。點選此處learn more (opens new window)。 :::
Pterodactyl 可在多種作業系統上運行,因此請選擇您最喜歡使用的作業系統。
::: 警告 由於與 Docker 不相容,Pterodactyl 不支援大多數 OpenVZ 系統。如果你正在計劃跑步 在基於 OpenVZ 的系統上使用此軟體,您很可能不會成功。 :::
| 作業系統 | 版本 | 支援 | 筆記 |
|---|---|---|---|
| Ubuntu | 22.04 | 22.04 ✅ | 需要額外的 PHP 儲存庫 |
| 24.04 | ✅ | MariaDB 可以在沒有儲存庫設定腳本的情況下安裝。 | |
| RHEL / Rocky Linux / AlmaLinux | 8 | ✅ | 需要額外的回購。 |
| 9 | ✅ | ||
| Debian | 11 | 11 ✅ | 受保護_0 |
| 12 | 12 ✅ | 受保護_0 | |
| 13 | ✅ | 受保護_0 |
8.2 或 8.3 (建議),具有以下副檔名: cli 、 openssl 、 gd 、 mysql 、 PDO 、 __PROTECTED TED _TEC_5 _______________ TEC NGINX,請使用 xml 或 dom 、 curl 、 zip 和 fpm 。5.7.22 及更高版本(推薦 MySQL 8) 或 MariaDB 10.2 及更高版本。redis-server)curltarunzipgitcomposer v2下面的命令只是說明如何安裝這些依賴項的範例。請諮詢您的 作業系統的套件管理器來決定要安裝的正確套件。
# Add "add-apt-repository" command
apt -y install software-properties-common curl apt-transport-https ca-certificates gnupg
# Add additional repositories for PHP (Ubuntu 22.04)
LC_ALL=C.UTF-8 add-apt-repository -y ppa:ondrej/php
# Add Redis official APT repository
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /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
# Update repositories list
apt update
# Install Dependencies
apt -y install php8.3 php8.3-{common,cli,gd,mysql,mbstring,bcmath,xml,fpm,curl,zip} mariadb-server nginx tar unzip git redis-server
Composer 是 PHP 的依賴管理器,它允許我們提供您操作面板所需的一切程式碼。你會 在繼續此過程之前需要安裝 Composer。
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
此過程的第一步是建立面板所在的資料夾,然後將我們移入該資料夾 新建立的資料夾。下面是如何執行此操作的範例。
mkdir -p /var/www/pterodactyl
cd /var/www/pterodactyl
為面板建立新目錄並移入其中後,您將需要下載面板檔案。這
就像使用 curl 下載我們預先包裝的內容一樣簡單。下載後,您需要解壓縮存檔
然後在 storage/ 和 bootstrap/cache/ 目錄上設定正確的權限。這些目錄
允許我們儲存檔案並保持快速快取以減少載入時間。
curl -Lo panel.tar.gz https://github.com/pterodactyl/panel/releases/latest/download/panel.tar.gz
tar -xzvf panel.tar.gz
chmod -R 755 storage/* bootstrap/cache/
## 安裝
現在所有文件都已下載,我們需要配置面板的一些核心方面。
::: 提示資料庫配置 您需要先設定資料庫並建立具有為該資料庫建立的正確權限的用戶 繼續任何進一步。請參閱下文,快速為您的翼龍面板建立使用者和資料庫。查找更詳細的信息 請查看 Setting up MySQL 。
# If using MariaDB (v11.0.0+) (This is the default when installing Pterodactyl by following the documentation.)
mariadb -u root -p
# If using MySQL
mysql -u root -p
# Remember to change 'yourPassword' below to be a unique password
CREATE USER 'pterodactyl'@'127.0.0.1' IDENTIFIED BY 'yourPassword';
CREATE DATABASE panel;
GRANT ALL PRIVILEGES ON panel.* TO 'pterodactyl'@'127.0.0.1' WITH GRANT OPTION;
exit
:::
首先,我們將複製預設的環境設定文件,安裝核心依賴項,然後生成 新的應用程式加密密鑰。
cp .env.example .env
COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev --optimize-autoloader
# Only run the command below if you are installing this Panel for
# the first time and do not have any Pterodactyl Panel data in the database.
php artisan key:generate --force
::: 危險
備份您的加密金鑰(.env 檔案中的 APP_KEY)。它用作所有需要安全儲存的資料(例如 API 金鑰)的加密金鑰。
將其儲存在安全的地方 - 不僅僅是在您的伺服器上。如果遺失,所有加密資料都將無法恢復,即使有資料庫備份也是如此。
若要取得 APP_KEY ,請開啟終端機並在面板目錄中執行下列命令:
grep APP_KEY /var/www/pterodactyl/.env
您應該會看到類似以下內容:
APP_KEY=base64:YOUR_LONG_RANDOM_STRING
複製整行並將其保存在安全的地方:
不要僅將其保留在伺服器上。如果您遺失此金鑰,您的加密資料將永久無法復原。 :::
使用應用程式內建的一些不同的 CLI 命令可以輕鬆配置 Pterodactyl 的核心環境。這一步 將涵蓋設定會話、快取、資料庫憑證和電子郵件發送等內容。
php artisan p:environment:setup
php artisan p:environment:database
# To use PHP's internal mail sending (not recommended), select "mail". To use a
# custom SMTP server, select "smtp".
php artisan p:environment:mail
現在我們需要在您之前建立的資料庫中設定面板的所有基礎資料。 **下面的命令 可能需要一些時間才能運行,具體取決於您的機器。請_請勿_退出過程,直至完成! ** 這 命令將設定資料庫表,然後添加為翼手龍提供動力的所有巢和蛋。
php artisan migrate --seed --force
然後,您需要建立一個管理用戶,以便可以登入面板。為此,請執行以下命令。 此時密碼必須滿足以下要求:8個字符,大小寫混合,至少1個數字。
php artisan p:user:make
安裝過程的最後一步是對面板檔案設定正確的權限,以便網路伺服器可以 正確使用它們。
# If using NGINX, Apache or Caddy (not on RHEL / Rocky Linux / AlmaLinux)
chown -R www-data:www-data /var/www/pterodactyl/*
# If using NGINX on RHEL / Rocky Linux / AlmaLinux
chown -R nginx:nginx /var/www/pterodactyl/*
# If using Apache on RHEL / Rocky Linux / AlmaLinux
chown -R apache:apache /var/www/pterodactyl/*
我們利用佇列來使應用程式更快並在背景處理發送電子郵件和其他操作。 您將需要設定佇列工作程序來處理這些操作。
我們需要做的第一件事是建立一個新的 cronjob,每分鐘運行一次來處理特定的 Pterodactyl 任務,例如
作為會話清理並將計劃任務傳送到守護進程。您需要使用 sudo crontab -e 開啟 crontab 並
然後貼上下面的行。
* * * * * php /var/www/pterodactyl/artisan schedule:run >> /dev/null 2>&1
接下來,您需要建立一個新的 systemd 工作執行緒來保持我們的佇列進程在背景運行。這個隊列負責 用於發送電子郵件並處理 Pterodactyl 的許多其他後台任務。
在 /etc/systemd/system 中建立一個名為 pteroq.service 的文件,其中包含下列內容。
# Pterodactyl Queue Worker File
# ----------------------------------
[Unit]
Description=Pterodactyl Queue Worker
After=redis-server.service
[Service]
# On some systems the user and group might be different.
# Some systems use `apache` or `nginx` as the user and group.
User=www-data
Group=www-data
Restart=always
ExecStart=/usr/bin/php /var/www/pterodactyl/artisan queue:work --queue=high,standard,low --sleep=3 --tries=3
StartLimitInterval=180
StartLimitBurst=30
RestartSec=5s
[Install]
WantedBy=multi-user.target
::: RHEL / Rocky Linux / AlmaLinux 上的 Redis 提示
如果您使用的是 RHEL、Rocky Linux 或 AlmaLinux,則需要在 After= 行將 redis-server.service 替換為 redis.service,以確保 redis 在佇列工作程序之前啟動。
:::
::: 提示
如果您不使用 redis 進行任何操作,則應刪除 After= 行,否則您將遇到錯誤
當服務啟動時。
:::
如果您的系統使用 redis,您將需要確保啟用它在啟動時啟動。您可以透過執行以下命令來做到這一點:
sudo systemctl enable --now redis-server
最後,啟用該服務並將其設定為在電腦啟動時啟動。
sudo systemctl enable --now pteroq.service
從1.11開始,Pterodactyl將收集匿名遙測數據,以幫助我們更了解 正在使用軟體。要了解有关此功能的更多信息并选择退出,请参阅我们的Telemetry 文件.確保繼續安裝過程的其餘部分。