From 6f77fb20e55664dea50ffe7af01ac22ee209e558 Mon Sep 17 00:00:00 2001 From: Bozhidar Date: Sat, 4 May 2024 03:50:46 +0300 Subject: [PATCH] update --- installers/centos-stream-9/greeting.sh | 16 +++++ .../install-partial/download_web.sh | 8 +++ .../install-partial/install_base.sh | 62 ++++++++++++++++ .../install-partial/install_log.sh | 14 ++++ .../install-partial/install_web.sh | 70 +++++++++++++++++++ installers/install.sh | 2 + 6 files changed, 172 insertions(+) create mode 100644 installers/centos-stream-9/greeting.sh create mode 100644 installers/centos-stream-9/install-partial/download_web.sh create mode 100644 installers/centos-stream-9/install-partial/install_base.sh create mode 100755 installers/centos-stream-9/install-partial/install_log.sh create mode 100644 installers/centos-stream-9/install-partial/install_web.sh diff --git a/installers/centos-stream-9/greeting.sh b/installers/centos-stream-9/greeting.sh new file mode 100644 index 0000000..5052558 --- /dev/null +++ b/installers/centos-stream-9/greeting.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +CURRENT_IP=$(curl -s ipinfo.io/ip) + +echo " \ + ____ _ ___ ______ _____ ____ _ _ _ _____ _ + | _ \| | | \ \ / / _ \| ____| | _ \ / \ | \ | | ____| | + | |_) | |_| |\ V /| |_) | _| | |_) / _ \ | \| | _| | | + | __/| _ | | | | _ <| |___ | __/ ___ \| |\ | |___| |___ + |_| |_| |_| |_| |_| \_\_____| |_| /_/ \_\_| \_|_____|_____ + WELCOME TO PHYRE PANEL! + OS: CentOS Stream 9 + You can login at: http://$CURRENT_IP:8443 +" + +# File can be saved at: /etc/profile.d/greeting.sh diff --git a/installers/centos-stream-9/install-partial/download_web.sh b/installers/centos-stream-9/install-partial/download_web.sh new file mode 100644 index 0000000..cce3df4 --- /dev/null +++ b/installers/centos-stream-9/install-partial/download_web.sh @@ -0,0 +1,8 @@ +#!/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 diff --git a/installers/centos-stream-9/install-partial/install_base.sh b/installers/centos-stream-9/install-partial/install_base.sh new file mode 100644 index 0000000..e05d9b2 --- /dev/null +++ b/installers/centos-stream-9/install-partial/install_base.sh @@ -0,0 +1,62 @@ +#!/bin/bash + +INSTALL_DIR="/phyre/install" + +yum update && yum install ca-certificates wget -y + +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 + yum install -y $DEPENDENCY +done + +# Start MySQL +service mysql start + +wget https://raw.githubusercontent.com/PhyreApps/PhyrePanel/main/installers/centos-stream-9/greeting.sh +mv greeting.sh /etc/profile.d/phyre-greeting.sh + +# Install PHYRE NGINX +wget https://github.com/PhyreApps/PhyrePanelNGINX/raw/main/compilators/centos/nginx/dist/phyre-nginx-1.25.5-1.el8.x86_64.rpm +sudo dnf install phyre-nginx-1.25.5-1.el8.x86_64.rpm + +## Install PHYRE PHP +#wget https://github.com/PhyreApps/PhyrePanelNGINX/raw/main/compilators/centos/nginx/dist/phyre-nginx-1.25.5-1.el8.x86_64.rpm +#rpm -i phyre-nginx-1.25.5-1.el8.x86_64.rpm + +# +#service phyre start +# +#PHYRE_PHP=/usr/local/phyre/php/bin/php +# +#ln -s $PHYRE_PHP /usr/bin/phyre-php +# +#curl -s https://phyrepanel.com/api/phyre-installation-log -X POST -H "Content-Type: application/json" -d '{"os": "ubuntu-22.04"}' diff --git a/installers/centos-stream-9/install-partial/install_log.sh b/installers/centos-stream-9/install-partial/install_log.sh new file mode 100755 index 0000000..78e2fe3 --- /dev/null +++ b/installers/centos-stream-9/install-partial/install_log.sh @@ -0,0 +1,14 @@ +#!/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" diff --git a/installers/centos-stream-9/install-partial/install_web.sh b/installers/centos-stream-9/install-partial/install_web.sh new file mode 100644 index 0000000..3764c46 --- /dev/null +++ b/installers/centos-stream-9/install-partial/install_web.sh @@ -0,0 +1,70 @@ +#!/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 +cp .env.example .env + +sed -i "s/^APP_URL=.*/APP_URL=127.0.0.1:8443" .env +sed -i "s/^APP_NAME=.*/APP_NAME=PHYRE_PANEL/" .env +sed -i "s/^DB_DATABASE=.*/DB_DATABASE=$PHYRE_PANEL_DB_NAME/" .env +sed -i "s/^DB_USERNAME=.*/DB_USERNAME=$PHYRE_PANEL_DB_USER/" .env +sed -i "s/^DB_PASSWORD=.*/DB_PASSWORD=$PHYRE_PANEL_DB_PASSWORD/" .env +sed -i "s/^DB_CONNECTION=.*/DB_CONNECTION=mysql/" .env + +sed -i "s/^MYSQL_ROOT_USERNAME=.*/MYSQL_ROOT_USERNAME=$MYSQL_PHYRE_ROOT_USERNAME/" .env +sed -i "s/^MYSQL_ROOT_PASSWORD=.*/MYSQL_ROOT_PASSWORD=$MYSQL_PHYRE_ROOT_PASSWORD/" .env + +phyre-php artisan key:generate +phyre-php artisan migrate +phyre-php artisan db:seed + +chmod -R o+w /usr/local/phyre/web/storage/ +chmod -R o+w /usr/local/phyre/web/bootstrap/cache/ + +CURRENT_IP=$(curl -s ipinfo.io/ip) + +echo "PhyrePanel downloaded successfully." +echo "Please visit http://$CURRENT_IP:8443 to continue installation of the panel." diff --git a/installers/install.sh b/installers/install.sh index 1c68990..5990fe7 100644 --- a/installers/install.sh +++ b/installers/install.sh @@ -38,6 +38,8 @@ DISTRO_NAME=$(cat /etc/os-release | grep -w "NAME" | cut -d "=" -f 2) DISTRO_NAME=${DISTRO_NAME//\"/} # Remove quotes from name string # Lowercase the distro name DISTRO_NAME=$(echo $DISTRO_NAME | tr '[:upper:]' '[:lower:]') +# replace spaces +DISTRO_NAME=${DISTRO_NAME// /-} INSTALLER_URL="https://raw.githubusercontent.com/PhyreApps/PhyrePanel/main/installers/${DISTRO_NAME}-${DISTRO_VERSION}/install.sh"