CT's Nextcloud, Freshrss.heimdall & mailbackup: Refractored PHP Installation

Now using external `AlpinePHPTool`  script for installing/configuring php.
This wil make upgrading PHP on existing containers automaticaly plausible/easier.

Removed php packages from alpine.yaml and moved them to CT-Files `Config/php.pkglist`
Remove PHP configurations steps from CT's init.sh and integrated them in  ` AlpinePHPTool`
Removed PHP timezone configuration files and intergradeded them in `AlpinePHPTool`
Updated
This commit is contained in:
2024-07-21 15:21:16 +02:00
parent fd00751efa
commit a41c5bef3c
21 changed files with 222 additions and 123 deletions

View File

@@ -205,9 +205,9 @@ files:
- path: /var/lib/dbus/machine-id - path: /var/lib/dbus/machine-id
generator: remove generator: remove
- path: /etc/netplan/10-lxc.yaml #- path: /etc/netplan/10-lxc.yaml
generator: dump # generator: dump
content: |- # content: |-
- path: /etc/network/interfaces - path: /etc/network/interfaces
@@ -277,6 +277,17 @@ files:
- nginx - nginx
- heimdall - heimdall
#PHP SetupScript
- path: /opt/Setup/Scripts/PHPTool.sh
generator: copy
source: Scripts/AlpinePHPTool.sh
variants:
- nextcloud
- mailbackup
# - elkarbackupALP
- heimdall
- freshrss
#FileForGitea #FileForGitea
- path: /opt/Setup - path: /opt/Setup
generator: copy generator: copy
@@ -472,39 +483,6 @@ packages:
#PKGS for nextcloud #PKGS for nextcloud
- packages: - packages:
- php83-pdo_mysql
- php83-pecl-imagick
- php83-cli
- php83-pecl-apcu
- php83-pecl-redis
- php83-fpm
- php83-cgi
- php83-common
- php83-mbstring
- php83-curl
- php83-gd
- php83-intl
- php83-soap
- php83-xml
- php83-zip
- php83-pear
- php83-session
- php83-posix
- php83-pdo
- php83-dom
- php83-simplexml
- php83-xmlreader
- php83-xmlwriter
- php83-opcache
- php83-pcntl
- php83-fileinfo
- php83-bcmath
- php83-gmp
- php83-sysvsem
- php83-exif
- php83-bz2
- php83-sodium
- php83-ctype
- libpng - libpng
- zlib - zlib
- imagemagick - imagemagick
@@ -552,15 +530,7 @@ packages:
#PKGS for MailBackup #PKGS for MailBackup
- packages: - packages:
- dovecot - dovecot
- php83-xml - offlineimap
- php83-fpm
- php83-curl
- php83-dom
- php83-zip
- php83-mbstring
- php83-openssl
- php83-ctype
- offlineimap@CommunityEdge
- sudo - sudo
- git - git
action: install action: install
@@ -596,19 +566,6 @@ packages:
#PKGS for Heimdall #PKGS for Heimdall
- packages: - packages:
- git - git
- php83
- php83-ctype
- php83-curl
- php83-pdo_sqlite
- php83-mbstring
- php83-json
- php83-zip
- php83-xml
- php83-fpm
- php83-session
- php83-openssl
- php83-tokenizer
- php83-fileinfo
action: install action: install
variants: variants:
- heimdall - heimdall
@@ -623,31 +580,7 @@ packages:
#PKGS for FreshRSS #PKGS for FreshRSS
- packages: - packages:
- git - git
- php83 #- php-pdo_sqlite
- php83-fpm
- php83-curl
- php83-gmp
- php83-intl
- php83-mbstring
- php83-xml
- php83-zip
- php83-ctype
- php83-dom
- php83-fileinfo
- php83-iconv
- php83-json
- php83-opcache
- php83-openssl
- php83-phar
- php83-session
- php83-simplexml
- php83-xmlreader
- php83-xmlwriter
- php83-xml
- php83-tokenizer
- php83-zlib
- php83-pdo_mysql
#- php83-pdo_sqlite
action: install action: install
variants: variants:
- freshrss - freshrss
@@ -671,7 +604,7 @@ packages:
http://dl-4.alpinelinux.org/alpine/v{{ image.release }}/community http://dl-4.alpinelinux.org/alpine/v{{ image.release }}/community
#EndREPOS #EndREPOS
{% if image.variant == "NoExist" %}@TestingEdge http://dl-4.alpinelinux.org/alpine/edge/testing{% endif %} {% if image.variant == "NoExist" %}@TestingEdge http://dl-4.alpinelinux.org/alpine/edge/testing{% endif %}
{% if image.variant == "mailbackup" %}@CommunityEdge http://dl-4.alpinelinux.org/alpine/edge/community{% endif %} {% if image.variant == "NoExist" %}@CommunityEdge http://dl-4.alpinelinux.org/alpine/edge/community{% endif %}
{% if image.variant == "elkarbackupALP" %}@CommunityOldStable http://dl-4.alpinelinux.org/alpine/v3.15/community{% endif %} {% if image.variant == "elkarbackupALP" %}@CommunityOldStable http://dl-4.alpinelinux.org/alpine/v3.15/community{% endif %}
actions: actions:

View File

@@ -34,7 +34,7 @@ rm -rf /etc/nginx/conf.d
mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf
#Configure Php #Configure Php
rm -rf /etc/php7/php-fpm.d/* echo ";Placeholder" > /etc/php7/php-fpm.d/www.conf
mv /opt/Setup/Configs/php.conf /etc/php7/php-fpm.d/elkarbackup.conf mv /opt/Setup/Configs/php.conf /etc/php7/php-fpm.d/elkarbackup.conf
mv /opt/Setup/Configs/phpTimezone.ini /etc/php7/conf.d/04_date_timezone.ini mv /opt/Setup/Configs/phpTimezone.ini /etc/php7/conf.d/04_date_timezone.ini

View File

@@ -38,7 +38,7 @@ http {
} }
location ~ \.php$ { location ~ \.php$ {
include fastcgi_params; include fastcgi_params;
fastcgi_pass unix:/run/php-fpm83/php-fpm.sock; fastcgi_pass unix:/run/php-fpmPHPver/php-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_split_path_info ^(.+\.php)(/.*)$;
set $path_info $fastcgi_path_info; set $path_info $fastcgi_path_info;
fastcgi_param PATH_INFO $path_info; fastcgi_param PATH_INFO $path_info;

View File

@@ -1,7 +1,7 @@
[freshrss] [freshrss]
user = nginx user = nginx
group = nginx group = nginx
listen = /run/php-fpm83/php-fpm.sock listen = /run/php-fpmPHPver/php-fpm.sock
listen.owner = nginx listen.owner = nginx
listen.group = nginx listen.group = nginx
php_admin_value[disable_functions] = exec,passthru,system php_admin_value[disable_functions] = exec,passthru,system
@@ -27,7 +27,7 @@ php_admin_value[max_input_time] = 15
php_admin_value[cgi.fix_pathinfo] = 0 php_admin_value[cgi.fix_pathinfo] = 0
php_admin_value[allow_url_fopen] = 1 php_admin_value[allow_url_fopen] = 1
php_admin_value[file_uploads] = On php_admin_value[file_uploads] = On
php_admin_value[open_basedir] = /opt/freshrss:/opt/freshrss-Extensions:/run/php-fpm83/php-fpm.sock:/tmp php_admin_value[open_basedir] = /opt/freshrss:/opt/freshrss-Extensions:/run/php-fpmPHPver/php-fpm.sock:/tmp
php_admin_value[session.use_strict_mode] = 1 php_admin_value[session.use_strict_mode] = 1
php_admin_value[session.cookie_httponly] = 1 php_admin_value[session.cookie_httponly] = 1

View File

@@ -0,0 +1 @@
php83 php83-fpm php83-curl php83-gmp php83-intl php83-mbstring php83-xml php83-zip php83-ctype php83-dom php83-fileinfo php83-iconv php83-json php83-opcache php83-openssl php83-phar php83-session php83-simplexml php83-xmlreader php83-xmlwriter php83-xml php83-tokenizer php83-zlib php83-pdo_mysql

View File

@@ -1,2 +0,0 @@
[Date]
date.timezone = Europe/Amsterdam

View File

@@ -4,10 +4,9 @@
rm -rf /etc/nginx/conf.d rm -rf /etc/nginx/conf.d
mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf
#Configure Php-Fpm #SetupPHP
rm -rf /etc/php83/php-fpm.d/* ash /opt/Setup/Scripts/PHPTool.sh -d freshrss || exit 1
mv /opt/Setup/Configs/php.conf /etc/php83/php-fpm.d/freshrss.conf rm /opt/Setup/Scripts/PHPTool.sh
mv /opt/Setup/Configs/phpTimezone.ini /etc/php83/conf.d/04_date_timezone.ini
#Configure Cron #Configure Cron
mv /opt/Setup/Configs/crontab /etc/crontabs/nginx mv /opt/Setup/Configs/crontab /etc/crontabs/nginx
@@ -31,5 +30,4 @@ ln -s /opt/freshrss-Extensions/cntools/xExtension-YouTubeChannel2RssFeed /opt/fr
chown -R nginx:nginx /opt/freshrss-Extensions chown -R nginx:nginx /opt/freshrss-Extensions
#Enable services on boot #Enable services on boot
rc-update add nginx rc-update add nginx
rc-update add php-fpm83

View File

@@ -37,7 +37,7 @@ http {
} }
location ~ \.php$ { location ~ \.php$ {
include fastcgi_params; include fastcgi_params;
fastcgi_pass unix:/run/php-fpm83/php-fpm.sock; fastcgi_pass unix:/run/php-fpmPHPver/php-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php; fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

View File

@@ -1,7 +1,7 @@
[heimdall] [heimdall]
user = nginx user = nginx
group = nginx group = nginx
listen = /run/php-fpm83/php-fpm.sock listen = /run/php-fpmPHPver/php-fpm.sock
listen.owner = nginx listen.owner = nginx
listen.group = nginx listen.group = nginx
php_admin_value[disable_functions] = exec,passthru,system php_admin_value[disable_functions] = exec,passthru,system
@@ -27,7 +27,7 @@ php_admin_value[max_input_time] = 15
php_admin_value[cgi.fix_pathinfo] = 0 php_admin_value[cgi.fix_pathinfo] = 0
php_admin_value[allow_url_fopen] = 1 php_admin_value[allow_url_fopen] = 1
php_admin_value[file_uploads] = On php_admin_value[file_uploads] = On
php_admin_value[open_basedir] = /opt/heimdall:/run/php-fpm83/php-fpm.sock:/tmp php_admin_value[open_basedir] = /opt/heimdall:/run/php-fpmPHPver/php-fpm.sock:/tmp
php_admin_value[session.use_strict_mode] = 1 php_admin_value[session.use_strict_mode] = 1
php_admin_value[session.cookie_httponly] = 1 php_admin_value[session.cookie_httponly] = 1

View File

@@ -0,0 +1 @@
php83 php83-ctype php83-curl php83-pdo_sqlite php83-mbstring php83-json php83-zip php83-xml php83-fpm php83-session php83-openssl php83-tokenizer php83-fileinfo

View File

@@ -1,2 +0,0 @@
[Date]
date.timezone = Europe/Amsterdam

View File

@@ -4,15 +4,13 @@
rm -rf /etc/nginx/conf.d rm -rf /etc/nginx/conf.d
mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf
#Configure Php-Fpm #SetupPHP
rm -rf /etc/php83/php-fpm.d/* ash /opt/Setup/Scripts/PHPTool.sh -d heimdall || exit 1
mv /opt/Setup/Configs/php.conf /etc/php83/php-fpm.d/heimdall.conf rm /opt/Setup/Scripts/PHPTool.sh
mv /opt/Setup/Configs/phpTimezone.ini /etc/php83/conf.d/04_date_timezone.ini
#Install Heimdall #Install Heimdall
git clone -b 2.x https://github.com/linuxserver/Heimdall.git /opt/heimdall git clone -b 2.x https://github.com/linuxserver/Heimdall.git /opt/heimdall
chown -R nginx:nginx /opt/heimdall chown -R nginx:nginx /opt/heimdall
#Enable services on boot #Enable services on boot
rc-update add nginx rc-update add nginx
rc-update add php-fpm83

View File

@@ -2,9 +2,16 @@
#Get Resources #Get Resources
git clone https://git.bprieshof.nl/Tools/MailBackup-sys.git /opt/Setup/MailBackup-sys git clone https://git.bprieshof.nl/Tools/MailBackup-sys.git /opt/Setup/MailBackup-sys
mkdir -p /opt/Setup/Configs
mv /opt/Setup/MailBackup-sys/Configs/php.* /opt/Setup/Configs
#Install and configure using git.bprieshof.nl MailBackup-sys #Install and configure using git.bprieshof.nl MailBackup-sys
DistoBuilderINT=true ash /opt/Setup/MailBackup-sys/install.sh DistoBuilderINT=true ash /opt/Setup/MailBackup-sys/install.sh
#Setup PHP
ash /opt/Setup/Scripts/PHPTool.sh -d mailbackup || exit 1
rm /opt/Setup/Scripts/PHPTool.sh
#cleanup #cleanup
rm -rf /opt/Setup/MailBackup-sys rm -rf /opt/Setup/MailBackup-sys
rm -f /opt/Setup/rlcl.zip rm -f /opt/Setup/rlcl.zip

View File

@@ -14,6 +14,7 @@ mv /opt/Setup/Configs/my.cnf /etc/mysql/my.cnf
mkdir /opt/PhpMyAdmin mkdir /opt/PhpMyAdmin
tar -C /opt/PhpMyAdmin -xzf /opt/Setup/phpmyadmin.tar.gz --strip 1 tar -C /opt/PhpMyAdmin -xzf /opt/Setup/phpmyadmin.tar.gz --strip 1
rm -rf /opt/Setup/phpmyadmin.tar.gz rm -rf /opt/Setup/phpmyadmin.tar.gz
mv /opt/Setup/Configs/php.ini /opt/PhpMyAdmin/php.ini
mv /opt/Setup/Configs/config.inc.php /opt/PhpMyAdmin/config.inc.php mv /opt/Setup/Configs/config.inc.php /opt/PhpMyAdmin/config.inc.php
mv /opt/Setup/Configs/phpmyadmin.service /etc/systemd/system/phpmyadmin.service mv /opt/Setup/Configs/phpmyadmin.service /etc/systemd/system/phpmyadmin.service
mv /opt/Setup/Scripts/UpdatePhpMyadmin.sh /opt/UpdatePhpMyadmin.sh mv /opt/Setup/Scripts/UpdatePhpMyadmin.sh /opt/UpdatePhpMyadmin.sh

View File

@@ -110,7 +110,7 @@ http {
fastcgi_param HTTPS on; fastcgi_param HTTPS on;
fastcgi_param modHeadersAvailable true; fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true; fastcgi_param front_controller_active true;
fastcgi_pass unix:/run/php-fpm83/php-fpm.sock; fastcgi_pass unix:/run/php-fpmPHPver/php-fpm.sock;
fastcgi_intercept_errors on; fastcgi_intercept_errors on;
fastcgi_request_buffering off; fastcgi_request_buffering off;
fastcgi_max_temp_file_size 0; fastcgi_max_temp_file_size 0;

View File

@@ -1,7 +1,7 @@
[nextcloud] [nextcloud]
user = nginx user = nginx
group = nginx group = nginx
listen = /run/php-fpm83/php-fpm.sock listen = /run/php-fpmPHPver/php-fpm.sock
listen.owner = nginx listen.owner = nginx
listen.group = nginx listen.group = nginx
php_admin_value[disable_functions] = exec,passthru,system php_admin_value[disable_functions] = exec,passthru,system
@@ -27,7 +27,7 @@ php_admin_value[memory_limit] = 512M
php_admin_value[cgi.fix_pathinfo] = 0 php_admin_value[cgi.fix_pathinfo] = 0
php_admin_value[allow_url_fopen] = Off php_admin_value[allow_url_fopen] = Off
php_admin_value[file_uploads] = on php_admin_value[file_uploads] = on
php_admin_value[open_basedir] = /opt/nextcloud/:/var/nextcloud:/run/php-fpm83/php-fpm.sock:/run/valkey/valkey.sock:/proc/meminfo:/proc/cpuinfo:/dev/urandom:/tmp php_admin_value[open_basedir] = /opt/nextcloud/:/var/nextcloud:/run/php-fpmPHPver/php-fpm.sock:/run/valkey/valkey.sock:/proc/meminfo:/proc/cpuinfo:/dev/urandom:/tmp
php_admin_value[session.use_strict_mode] = 1 php_admin_value[session.use_strict_mode] = 1
php_admin_value[session.cookie_httponly] = 1 php_admin_value[session.cookie_httponly] = 1
;HTTPSONLY php_admin_value[session.cookie_samesite] = Strict ;HTTPSONLY php_admin_value[session.cookie_samesite] = Strict

View File

@@ -0,0 +1 @@
php83-pdo_mysql php83-pecl-imagick php83-cli php83-pecl-apcu php83-pecl-redis php83-fpm php83-cgi php83-common php83-mbstring php83-curl php83-gd php83-intl php83-soap php83-xml php83-zip php83-pear php83-session php83-posix php83-pdo php83-dom php83-simplexml php83-xmlreader php83-xmlwriter php83-opcache php83-pcntl php83-fileinfo php83-bcmath php83-gmp php83-sysvsem php83-exif php83-bz2 php83-sodium php83-ctype

View File

@@ -1,2 +0,0 @@
[Date]
date.timezone = Europe/Amsterdam

View File

@@ -6,13 +6,10 @@ curl -L --retry 7 --retry-delay 5 https://download.nextcloud.com/server/releases
rm -rf /etc/nginx/conf.d rm -rf /etc/nginx/conf.d
mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf
#Configure Php-Cli #Setup PHP
sed -i '/memory_limit =/c\memory_limit = 512M' /etc/php83/php.ini ash /opt/Setup/Scripts/PHPTool.sh -d nextcloud || exit 1
rm /opt/Setup/Scripts/PHPTool.sh
#Configure Php-Fpm
rm -rf /etc/php83/php-fpm.d/*
mv /opt/Setup/Configs/php.conf /etc/php83/php-fpm.d/nextcloud.conf
mv /opt/Setup/Configs/phpTimezone.ini /etc/php83/conf.d/04_date_timezone.ini
#Install Nextcloud #Install Nextcloud
mkdir /opt/nextcloud /var/nextcloud mkdir /opt/nextcloud /var/nextcloud
@@ -21,8 +18,6 @@ rm -rf /opt/Setup/nextcloud.tar.bz2
chown -R nginx:nginx /opt/nextcloud chown -R nginx:nginx /opt/nextcloud
chown -R nginx:nginx /var/nextcloud chown -R nginx:nginx /var/nextcloud
echo "*/5 * * * * php83 -f /opt/nextcloud/cron.php > /dev/null 2>&1" >> /etc/crontabs/nginx echo "*/5 * * * * php83 -f /opt/nextcloud/cron.php > /dev/null 2>&1" >> /etc/crontabs/nginx
echo "apc.enable_cli=1" >> /etc/php83/php.ini
#Enable services on boot #Enable services on boot
rc-update add nginx rc-update add nginx
rc-update add php-fpm83
rc-update add valkey rc-update add valkey

171
Scripts/AlpinePHPTool.sh Normal file
View File

@@ -0,0 +1,171 @@
#!/bin/ash
############################################
# @description: #
# (Re)install/update and configure PHP #
# #
# @project: HomeserverCTs #
# @target: Alpine Linux based CT's #
############################################
#ScriptConfig
self=$0
Configurations="nextcloud freshrss heimdall mailbackup"
SupportedAlpineVersion=3.20
NewPHPVer=83
SkipAlpineRelCheck=false
#Git configuration only used for Upgrades and Fresh mode
gitRepo=https://git.bprieshof.nl/brammp/HomeServerCTs
gitBranch=main
#AlpineCheck
if [[ $(cat /etc/os-release | grep -m 1 ^"ID=") != *"alpine"* ]]; then echo Not on Alpine Linux ;exit 1;fi
#AlpineVersionCheck
if $SkipAlpineRelCheck ; then echo "Notice: Alpine releas check skipped"
elif [[ $(grep "^VERSION_ID=" /etc/os-release | awk -F= '{print $2}') != *"$SupportedAlpineVersion"* ]]; then printf "This Alpine Linux is not supported by default,\nto continue set SkipAlpineRelCheck to true and check the targeted php version in the script\n" ;exit 1;fi
#Functions for menu/core use
show_help () {
cat <<END_HELP
Usage: $self [-dfpuh] <Config name>
Options:
-d, Distrobuilder: Install everything and use Local configs (non interactive)
-f, Fresh: Install everything and fetch config
-p, Purge: Remove all PHP packlages and back configuration (handy for distro release upgrades)
-u, Upgrade: Run both Purge and Install steps
Cnfigurations:
$Configurations
END_HELP
}
set_mode () {
if [ ! -z "$mode" ]; then echo "ERROR: Unable to use multiple modes at once";exit 1;fi
mode=$1
}
#Arugment/optin handeling
while getopts 'dfpuh' opt; do
case $opt in
d) set_mode distrobuilder;;
f) set_mode fresh ;;
p) set_mode purge ;;
u) set_mode upgrade ;;
h) show_help
exit ;;
*) show_help
exit 1
esac
done
shift "$(( OPTIND - 1 ))"
for config do
config=$config
done
if [ -z "$mode" ]; then
printf "ERROR: No mode argument given\n\n"
show_help
exit 1
elif [ -z "$config" ]; then
printf "ERROR: No configuration argument given\n\n"
show_help
exit 1
elif [[ -z "$(echo "$Configurations" | fgrep -w "$config")" ]]; then
printf "ERROR: Invalid configuration argument given\n\n"
show_help
exit 1
fi
#Functions for mode
#Backup PHP config and purge PHP packages
run_Purge() {
#Check if PHP is installed
if ! command -v php &> /dev/null; then printf "ERROR: PHP is not installed\n\n"; exit 1;fi
#Get current PHP Version
OldPHPVer=$(grep php /etc/apk/world -m 1|sed -e "s/\-.*//" -e "s/php//")
#Create Backup an its location
if [[ ! -d "/opt/PHPCfgBackup/" ]];then mkdir -p "/opt/PHPCfgBackup"; fi
tar -czf "/opt/PHPCfgBackup/PHP$OldPHPVer-Config.tar.gz" -C "/etc/php$OldPHPVer" ./
rm -rf "/etc/php$OldPHPVer"
#Set placeholder in Nginx for PHP Socket
sed -i -e 's/'$OldPHPVer'/PHPver/g' /etc/nginx/nginx.conf
#Purge PHP packages
apk del php*
}
#(re)install PHP packages
run_Install() {
cat $configStore/php.pkglist | xargs apk add
#Configure Php-Fpm
echo ";Placeholder" > /etc/php$NewPHPVer/php-fpm.d/www.conf
sed -i -e 's/PHPver/'$NewPHPVer'/g' $configStore/php.conf
mv $configStore/php.conf /etc/php$NewPHPVer/php-fpm.d/$config.conf
printf "[Date]\ndate.timezone = Europe/Amsterdam" >/etc/php$NewPHPVer/conf.d/04_date_timezone.ini
#Configure Nginx PHP Socket
sed -i -e 's/PHPver/'$NewPHPVer'/g' /etc/nginx/nginx.conf
#Unique settings for configuration
case $config in
nextcloud)
echo runnig distrobuilder
#Configure Php-Cli
sed -i '/memory_limit =/c\memory_limit = 512M' /etc/php$NewPHPVer/php.ini
echo "apc.enable_cli=1" >> /etc/php$NewPHPVer/php.ini
;;
esac
#Enable service(s) on boot
rc-update add php-fpm$NewPHPVer
}
fetch_Config() {
#Unique settings for configuration
case $config in
mailbackup)
wget https://git.bprieshof.nl/Tools/MailBackup-sys/raw/branch/alpine/Configs/php.conf -O /tmp/php.conf || echo "ERROR: Config download failed";exit 1
wget https://git.bprieshof.nl/Tools/MailBackup-sys/raw/branch/alpine/Configs/php.pkglist -O /tmp/php.pkglist || echo "ERROR: Config download failed";exit 1
;;
*)
wget "$repo"/raw/branch/"$branch"/CT-Files/$config/Configs/php.conf -O /tmp/php.conf || echo "ERROR: Config download failed";exit 1
wget "$repo"/raw/branch/"$branch"/CT-Files/"$config"/Configs/php.pkglist -O /tmp/php.pkglist || echo "ERROR: Config download failed";exit 1
;;
esac
}
case $mode in
distrobuilder)
#Set config location
configStore=/opt/Setup/Configs
run_Install
;;
fresh)
fetch_Config
#Set config location
configStore=/tmp
run_Install
;;
purge)
run_Purge
;;
upgrade)
#Set config location
configStore=/opt/Setup/Configs
fetch_Config
service nginx stop
run_Purge
run_Install
service nginx start
;;
esac

View File

@@ -7,6 +7,5 @@ cd "$( cd "$( dirname "$0" )" &> /dev/null && pwd )/.."
read -p "Old PHP version (example 82 for 8.2): " OldPHPVer read -p "Old PHP version (example 82 for 8.2): " OldPHPVer
read -p "New PHP version (example 83 for 8.3): " NewPHPVer read -p "New PHP version (example 83 for 8.3): " NewPHPVer
sed -i -e "s/php$OldPHPVer/php$NewPHPVer/g" ./CT-Build/Alpine.yaml sed -i -e "s/NewPHPVer=$OldPHPVer/NewPHPVer=$NewPHPVer/g" ./Scripts/AlpinePHPTool.sh
find ./CT-Files -name "php.pkglist" | xargs sed -i -e "s/php-fpm$OldPHPVer/php-fpm$NewPHPVer/g" -e "s/php$OldPHPVer/php$NewPHPVer/g"
find ./CT-Files -type f | xargs sed -i -e "s/php-fpm$OldPHPVer/php-fpm$NewPHPVer/g" -e "s/php$OldPHPVer/php$NewPHPVer/g"