Repository navigation
Installation
Download and review the manager before running it from a root shell:
curl -fsSL https://raw.githubusercontent.com/devrock07/Rockdactyl/main/install.sh \
-o /tmp/rockdactyl-install.sh
less /tmp/rockdactyl-install.sh
bash /tmp/rockdactyl-install.sh installThe manager can install, update, or restore its pre-theme backup. It verifies the release checksum before touching the panel and brings the application back online if a later stage fails.
Direct commands are also supported:
bash /tmp/rockdactyl-install.sh update
bash /tmp/rockdactyl-install.sh restoreUse --no-animation for plain logs or --verbose for complete command output.
The shorter bash <(curl -fsSL …/main/install.sh) form is convenient, but it
executes mutable remote code immediately and cannot be reviewed first.
Rockdactyl is a complete overlay for the exact Pterodactyl base named in its compatibility information. Do not extract it over a different Pterodactyl base version.
Create backups first. Download and verify the release before entering maintenance mode:
set -euo pipefail
rock_download_dir="$(mktemp -d)"
trap 'rm -rf -- "$rock_download_dir"' EXIT
cd "$rock_download_dir"
curl -fL -o panel.tar.gz \
https://github.com/devrock07/Rockdactyl/releases/latest/download/panel.tar.gz
curl -fL -o panel.tar.gz.sha256 \
https://github.com/devrock07/Rockdactyl/releases/latest/download/panel.tar.gz.sha256
sha256sum --check panel.tar.gz.sha256
tar -tzf panel.tar.gz > archive-list.txt
if grep -Eq '(^/|(^|/)\.\.(/|$))' archive-list.txt; then
echo 'Unsafe path found in archive.' >&2
exit 1
fi
grep -Fxq './artisan' archive-list.txt
grep -Fxq './composer.json' archive-list.txtContinue only after the checksum reports panel.tar.gz: OK, both required
files are found, and the path check succeeds. In the same shell, deploy the
verified archive:
set -euo pipefail
rock_panel_dir=/var/www/pterodactyl
cd "$rock_panel_dir"
php artisan down
trap 'cd "$rock_panel_dir"; php artisan up; rm -rf -- "$rock_download_dir"' EXIT
tar -xzf "$rock_download_dir/panel.tar.gz" -C "$rock_panel_dir"
composer install --no-dev --optimize-autoloader --no-interaction
php artisan migrate --seed --force
php artisan optimize:clear
php artisan queue:restart
chown -R www-data:www-data /var/www/pterodactyl
find storage bootstrap/cache -type d -exec chmod 755 {} +
find storage bootstrap/cache -type f -exec chmod 644 {} +
php artisan up
rm -rf -- "$rock_download_dir"
trap - EXITReplace www-data with the account used by your web server.
Images are published to:
ghcr.io/devrock07/rock-theme
Use a version tag for production rather than edge. Existing Pterodactyl
database, environment, storage, reverse-proxy, and Wings requirements still
apply. See the
container documentation
for the image layout and the repository's Rockdactyl Compose example.
cd /var/www/pterodactyl
php artisan about
php artisan migrate:status
php artisan queue:restartThen load the login screen and one server view. If styling appears stale, see Troubleshooting.
Rockdactyl documentation · Repository · Releases · Security and Support