#!/bin/bash INSTALL_DIR="/phyre/install" apt-get update && apt-get install ca-certificates mkdir -p $INSTALL_DIR cd $INSTALL_DIR DEPENDENCIES_LIST=( "openssl" "jq" "curl" "wget" "unzip" "zip" "tar" "mysql-common" "mysql-server" "mysql-client" "lsb-release" "gnupg2" "ca-certificates" "apt-transport-https" "software-properties-common" "supervisor" "libonig-dev" "libzip-dev" "libcurl4-openssl-dev" "libsodium23" "libpq5" "libssl-dev" "zlib1g-dev" ) # Check if the dependencies are installed for DEPENDENCY in "${DEPENDENCIES_LIST[@]}"; do apt install -yq $DEPENDENCY done # Start MySQL service mysql start wget https://raw.githubusercontent.com/PhyreApps/PhyrePanel/main/installers/ubuntu-20.04/greeting.sh mv greeting.sh /etc/profile.d/phyre-greeting.sh # Install PHYRE PHP wget https://github.com/PhyreApps/PhyrePanelPHP/raw/main/compilators/debian/php/dist/phyre-php-8.2.0-ubuntu-20.04.deb dpkg -i phyre-php-8.2.0-ubuntu-20.04.deb # Install PHYRE NGINX wget https://github.com/PhyreApps/PhyrePanelNGINX/raw/main/compilators/debian/nginx/dist/phyre-nginx-1.24.0-ubuntu-20.04.deb dpkg -i phyre-nginx-1.24.0-ubuntu-20.04.deb service phyre start PHYRE_PHP=/usr/local/phyre/php/bin/php ln -s $PHYRE_PHP /usr/bin/phyre-php #!/bin/bash HOSTNAME=$(hostname) IP_ADDRESS=$(hostname -I | cut -d " " -f 1) DISTRO_VERSION=$(cat /etc/os-release | grep -w "VERSION_ID" | cut -d "=" -f 2) DISTRO_VERSION=${DISTRO_VERSION//\"/} # Remove quotes from version string DISTRO_NAME=$(cat /etc/os-release | grep -w "NAME" | cut -d "=" -f 2) DISTRO_NAME=${DISTRO_NAME//\"/} # Remove quotes from name string LOG_JSON='{"os": "'$DISTRO_NAME-$DISTRO_VERSION'", "host_name": "'$HOSTNAME'", "ip": "'$IP_ADDRESS'"}' curl -s https://phyrepanel.com/api/phyre-installation-log -X POST -H "Content-Type: application/json" -d "$LOG_JSON" #!/bin/bash wget https://github.com/PhyreApps/PhyrePanelWebCompiledVersions/raw/main/phyre-web-panel.zip unzip -qq -o phyre-web-panel.zip -d /usr/local/phyre/web rm -rf phyre-web-panel.zip chmod 711 /home chmod -R 750 /usr/local/phyre #!/bin/bash # Check dir exists if [ ! -d "/usr/local/phyre/web" ]; then echo "PhyrePanel directory not found." return 1 fi # Go to web directory cd /usr/local/phyre/web # Create MySQL user MYSQL_PHYRE_ROOT_USERNAME="phyre" MYSQL_PHYRE_ROOT_PASSWORD="$(tr -dc a-za-z0-9 /root/.mysql_root_password # Configure the application phyre-php artisan phyre:set-ini-settings APP_ENV "local" phyre-php artisan phyre:set-ini-settings APP_URL "127.0.0.1:8443" phyre-php artisan phyre:set-ini-settings APP_NAME "PHYRE_PANEL" phyre-php artisan phyre:set-ini-settings DB_DATABASE "$PHYRE_PANEL_DB_NAME" phyre-php artisan phyre:set-ini-settings DB_USERNAME "$PHYRE_PANEL_DB_USER" phyre-php artisan phyre:set-ini-settings DB_PASSWORD "$PHYRE_PANEL_DB_PASSWORD" phyre-php artisan phyre:set-ini-settings DB_CONNECTION "mysql" phyre-php artisan phyre:set-ini-settings MYSQL_ROOT_USERNAME "$MYSQL_PHYRE_ROOT_USERNAME" phyre-php artisan phyre:set-ini-settings MYSQL_ROOT_PASSWORD "$MYSQL_PHYRE_ROOT_PASSWORD" phyre-php artisan phyre:key-generate phyre-php artisan migrate phyre-php artisan db:seed phyre-php artisan phyre:set-ini-settings APP_ENV "production" chmod -R o+w /usr/local/phyre/web/storage/ chmod -R o+w /usr/local/phyre/web/bootstrap/cache/ CURRENT_IP=$(hostname -I | awk '{print $1}') echo "PhyrePanel downloaded successfully." echo "Please visit http://$CURRENT_IP:8443 to continue installation of the panel."