Minor updates

This commit is contained in:
Sergei Solovev 2023-10-12 22:47:04 +03:00
parent f1795932eb
commit 92e6b290f3
2 changed files with 139 additions and 116 deletions

View File

@ -1 +1,7 @@
# Autoinstall
<p align="center"><b>Automatic installation for EngineGP</p>
Supported systems:
Debian 10, 11
Starting the auto installer:</br>
chmod +x install.sh</br>
./install.sh

View File

@ -8,8 +8,9 @@ sysUpdate (){
# Обновление системы
sysUpdate
# Установка начальных пакетов
pkgsREQ=(sudo curl)
# Установка начальных пакетов.
# lsb-release wget gnupg - Требуются для MySQL. В остальном зависимость не проверялась.
pkgsREQ=(sudo curl lsb-release wget gnupg)
# Цикл установки пакетов
for package in "${pkgsREQ[@]}"; do
@ -20,14 +21,18 @@ for package in "${pkgsREQ[@]}"; do
fi
done
# Определение операционной системы
verOS=`cat /etc/issue.net | awk '{print $1,$3}'`
# Массив с поддерживаемыми версиями Debian
suppOS=("Debian 10" "Debian 11")
# Получаем текущую версию операционной системы
currOS=`cat /etc/issue.net | awk '{print $1,$3}'`
# Проверка аргументов командной строки
if [ $# -gt 0 ]; then
# Переменные для хранения
verEGP=""
verPHP=""
verSQL=""
sysIP=""
# Перебор всех аргументов
@ -47,6 +52,12 @@ if [ $# -gt 0 ]; then
shift # Пропустить значение версии
shift # Пропустить аргумент --php
;;
--sql)
# Если передан аргумент --sql, сохранить указанную версию PHP
verSQL="$2"
shift # Пропустить значение версии
shift # Пропустить аргумент --php
;;
--ip)
# Если передан аргумент --ip, сохранить указанный IP-адрес
sysIP="$2"
@ -56,10 +67,11 @@ if [ $# -gt 0 ]; then
*)
# Неизвестный аргумент, вывести справку и выйти
clear
echo "Использование: ./install.sh [--release версия] [--php версия] [--ip IP-адрес]"
echo " --release версия: установить указанную версию EngineGP"
echo " --php версия: установить указанную версию PHP"
echo " --ip IP-адрес: использовать указанный IP-адрес"
echo "Использование: ./install.sh [--release версия] [--php версия] [--sql версия] [--ip IP-адрес]"
echo " --release версия: установить указанную версию EngineGP. Формат должен быть: 3.6.3.0"
echo " --php версия: установить указанную версию PHP. Формат должен быть: 8.1"
echo " --sql версия: установить указанную базу данный. Формат должен быть: mysql или mariadb"
echo " --ip IP-адрес: использовать указанный IP-адрес. Формат должен быть: 192.168.1.1"
exit 1
;;
esac
@ -73,7 +85,7 @@ if [ $# -gt 0 ]; then
# Если версия PHP не выбрана, использовать PHP 8.0 по умолчанию
if [ -z "$verPHP" ]; then
verPHP="8.0"
verPHP="7.0"
fi
# Если IP-адрес не указан, получить внешний IP-адрес с помощью сервиса ipinfo.io
@ -84,7 +96,7 @@ else
# Если нет аргументов, получить последнюю версию EngineGP из файла на сайте
LATEST_URL="https://resources.enginegp.com/latest"
verEGP=$(curl -s "$LATEST_URL" | awk 'NR==1 {print $2}')
verPHP="8.0"
verPHP="7.0"
sysIP=$(curl -s ipinfo.io/ip)
fi
@ -124,18 +136,20 @@ while true; do
case $choice in
1)
clear
# Проверяем, содержится ли текущая версия в массиве поддерживаемых версий
if [[ " ${suppOS[@]} " =~ " ${currOS} " ]]; then
# Список пакетов для установки
pkgsALL=(ufw memcached unzip bc cron apache2 libapache2-mpm-itk php$verPHP php$verPHP-common php$verPHP-cli php$verPHP-memcache php$verPHP-memcached php$verPHP-mysql php$verPHP-xml php$verPHP-mbstring php$verPHP-gd php$verPHP-imagick php$verPHP-zip php$verPHP-curl php$verPHP-ssh2 php$verPHP-xml libapache2-mod-php$verPHP nginx mariadb-server)
pkgsALL=(ufw memcached unzip bc cron apache2 libapache2-mpm-itk php$verPHP php$verPHP-common php$verPHP-cli php$verPHP-memcache php$verPHP-memcached php$verPHP-mysql php$verPHP-xml php$verPHP-mbstring php$verPHP-gd php$verPHP-imagick php$verPHP-zip php$verPHP-curl php$verPHP-ssh2 php$verPHP-xml libapache2-mod-php$verPHP nginx)
apache_ports="Listen 8080
<IfModule ssl_module>
<IfModule ssl_module>
Listen 443
</IfModule>
</IfModule>
<IfModule mod_gnutls.c>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>"
</IfModule>"
# Конфигурация apache для EngineGP
apache_enginegp="<VirtualHost *:8080>
@ -301,6 +315,9 @@ while true; do
# Перезапускаем apache
sudo systemctl restart apache2 >> "$(dirname "$0")/enginegp_install.log" 2>&1
else
echo "Вы используете неподдерживаемую версию Linux"
fi
;;
2)
clear
@ -315,7 +332,7 @@ while true; do
4)
clear
echo "Последняя версия EngineGP: $verEGP"
echo "Текущая версия Linux: $verOS"
echo "Текущая версия Linux: $currOS"
echo "Внешний IP-адрес: $sysIP"
echo "Версия php: $verPHP"
;;