Merge Dev to Main (Alpine 1.17 update) #1

Merged
brammp merged 12 commits from dev into main 2023-01-29 15:53:17 +01:00
16 changed files with 151 additions and 85 deletions

View File

@@ -1,6 +1,6 @@
image:
distribution: "alpinelinux"
release: "3.16"
release: "3.17"
source:
downloader: alpinelinux-http
@@ -456,34 +456,34 @@ packages:
#PKGS for nextcloud
- packages:
- php8-pdo_mysql
- php8-pecl-imagick
- php8-cli
- php8-pecl-apcu
- php8-pecl-redis
- php8-fpm
- php8-cgi
- php8-common
- php8-mbstring
- php8-curl
- php8-gd
- php8-intl
- php8-soap
- php8-xml
- php8-zip
- php8-pear
- php8-session
- php8-posix
- php8-pdo
- php8-dom
- php8-simplexml
- php8-xmlreader
- php8-xmlwriter
- php8-opcache
- php8-pcntl
- php8-fileinfo
- php8-bcmath
- php8-gmp
- php81-pdo_mysql
- php81-pecl-imagick
- php81-cli
- php81-pecl-apcu
- php81-pecl-redis
- php81-fpm
- php81-cgi
- php81-common
- php81-mbstring
- php81-curl
- php81-gd
- php81-intl
- php81-soap
- php81-xml
- php81-zip
- php81-pear
- php81-session
- php81-posix
- php81-pdo
- php81-dom
- php81-simplexml
- php81-xmlreader
- php81-xmlwriter
- php81-opcache
- php81-pcntl
- php81-fileinfo
- php81-bcmath
- php81-gmp
- libpng
- zlib
- imagemagick
@@ -510,7 +510,7 @@ packages:
- python3-dev
- ca-certificates
- libffi-dev
- libressl-dev
- openssl-dev
- nmap
- iputils
- build-base
@@ -528,12 +528,12 @@ packages:
#PKGS for MailBackup
- packages:
- dovecot
- php8-xml
- php8-fpm
- php8-curl
- php8-dom
- php8-zip
- php8-mbstring
- php81-xml
- php81-fpm
- php81-curl
- php81-dom
- php81-zip
- php81-mbstring
- php-openssl
- py3-pip
- sudo
@@ -571,19 +571,19 @@ packages:
#PKGS for Heimdall
- packages:
- git
- php8
- php8-ctype
- php8-curl
- php8-pdo_sqlite
- php8-mbstring
- php8-json
- php8-zip
- php8-xml
- php8-fpm
- php8-session
- php8-openssl
- php8-tokenizer
- php8-fileinfo
- php81
- php81-ctype
- php81-curl
- php81-pdo_sqlite
- php81-mbstring
- php81-json
- php81-zip
- php81-xml
- php81-fpm
- php81-session
- php81-openssl
- php81-tokenizer
- php81-fileinfo
action: install
variants:
- heimdall
@@ -639,6 +639,7 @@ actions:
#!/bin/sh
#Install pm2
npm install -g pm2
chown -R root:root /usr/local/lib/node_modules/pm2/node_modules
#Add NodeJS `node` service user
addgroup node
adduser -S -s /bin/ash -h /home/node -D -G node node

View File

@@ -7,7 +7,7 @@ pipeline {
string defaultValue: '192.168.200.11', description: 'Proxy server for packages, when enabled', name: 'ProxyServer'
booleanParam description: 'will disable use of proxy server', name: 'DisProxy'
checkboxParameter(name: 'ImgVariantList', format: 'JSON', displayNodePath: "//Variants/Variant", valueNodePath: "//Variants/Variant", description: 'Select the variant(s) that should be build',
pipelineSubmitContent: '{"Variants": [{"Variant": "minimal"},{"Variant": "default"},{"Variant": "jenkinsbuilder"},{"Variant": "imgbuilder"},{"Variant": "jenkins"},{"Variant": "mysql"},{"Variant": "pihole"},{"Variant": "collabora"},{"Variant": "jellyfin"},{"Variant": "domoticz"},{"Variant": "omadaV3"},{"Variant": "docker"},{"Variant": "smb"},{"Variant": "tvheadend"},{"Variant": "x2go"},{"Variant": "aptcacherng"},{"Variant": "elkarbackupDEB"},{"Variant": "nfs"},{"Variant": "duplicati"},{"Variant": "fileshelter"}]}')
pipelineSubmitContent: '{"Variants": [{"Variant": "minimal"},{"Variant": "default"},{"Variant": "jenkinsbuilder"},{"Variant": "imgbuilder"},{"Variant": "jenkins"},{"Variant": "mysql"},{"Variant": "pihole"},{"Variant": "collabora"},{"Variant": "jellyfin"},{"Variant": "domoticz"},{"Variant": "omadaV3"},{"Variant": "docker"},{"Variant": "smb"},{"Variant": "tvheadend"},{"Variant": "x2go"},{"Variant": "aptcacherng"},{"Variant": "elkarbackupDEB"},{"Variant": "nfs"},{"Variant": "duplicati"},{"Variant": "fileshelter"},{"Variant": "esphome"}]}')
}
options {
skipDefaultCheckout()

View File

@@ -1005,6 +1005,13 @@ files:
variants:
- fileshelter
#FileForESPHome
- path: /opt/Setup
generator: copy
source: CT-Files/esphome
variants:
- esphome
packages:
manager: apt
update: true
@@ -1053,6 +1060,7 @@ packages:
- nfs
- duplicati
- fileshelter
- esphome
#Minimal pkgs
- packages:
@@ -1346,6 +1354,19 @@ packages:
variants:
- fileshelter
#esphome pkgs
- packages:
- python3
- python3-venv
- python3-pip
- git
- sudo
- g++
- nano
action: install
variants:
- esphome
repositories:
- name: sources.list
url: |-
@@ -1493,6 +1514,7 @@ actions:
- nfs
- duplicati
- fileshelter
- esphome
#Move App update script for ProxmoxHelper/ProxMoxToolKit, if CT has this script
- trigger: post-files

View File

@@ -0,0 +1,13 @@
[Unit]
Description= ESPHome Dashboard
After=network.target
[Service]
User=esphome
ExecStart=/opt/ESPHome/srv/bin/esphome -q dashboard /opt/ESPHome/data/
Restart=on-failure
RestartSec=5s
Environment="PATH=/usr/local/bin:/usr/bin:/bin:/opt/ESPHome/srv/bin"
[Install]
WantedBy=multi-user.target

View File

@@ -0,0 +1,19 @@
#!/bin/bash
#Install ESPHome
mkdir -p /opt/ESPHome/srv
mkdir -p /opt/ESPHome/data
adduser --group --system --no-create-home --home /opt/ESPHome/data --shell /bin/sh esphome
chown -R esphome:esphome /opt/ESPHome
sudo -u esphome python3 -m venv /opt/ESPHome/srv
sudo -u esphome sh -c '. /opt/ESPHome/srv/bin/activate && pip install --upgrade pip && pip3 install tornado esptool esphome'
#Update script
mv /opt/Setup/Scripts/UpdateESPHome.sh /opt/UpdateESPHome.sh
#CleanUp
rm -rf /build/TMP/usr/lib/python3.9/__pycache__/*
#Setup ESPHome service
mv /opt/Setup/Configs/esphome.service /lib/systemd/system/esphome.service
chmod +x /lib/systemd/system/esphome.service
ln -s /lib/systemd/system/esphome.service /etc/systemd/system/multi-user.target.wants/esphome.service

View File

@@ -0,0 +1,3 @@
#!/bin/sh
# Update script for updating apps with ProxmoxHelper/ProxMoxToolKit
bash /opt/UpdateESPHome.sh

View File

@@ -0,0 +1,4 @@
#!/bin/bash
service esphome stop
sudo -u esphome sh -c '. /opt/ESPHome/srv/bin/activate && pip install --upgrade pip && pip3 install --upgrade tornado esptool esphome'
service esphome start

View File

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

View File

@@ -1,7 +1,7 @@
[heimdall]
user = nginx
group = nginx
listen = /run/php-fpm8/php-fpm.sock
listen = /run/php-fpm81/php-fpm.sock
listen.owner = nginx
listen.group = nginx
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[allow_url_fopen] = 1
php_admin_value[file_uploads] = On
php_admin_value[open_basedir] = /opt/heimdall:/run/php-fpm8/php-fpm.sock:/tmp
php_admin_value[open_basedir] = /opt/heimdall:/run/php-fpm81/php-fpm.sock:/tmp
php_admin_value[session.use_strict_mode] = 1
php_admin_value[session.cookie_httponly] = 1

View File

@@ -5,9 +5,9 @@ rm -rf /etc/nginx/conf.d
mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf
#Configure Php-Fpm
rm -rf /etc/php8/php-fpm.d/*
mv /opt/Setup/Configs/php.conf /etc/php8/php-fpm.d/heimdall.conf
mv /opt/Setup/Configs/phpTimezone.ini /etc/php8/conf.d/04_date_timezone.ini
rm -rf /etc/php81/php-fpm.d/*
mv /opt/Setup/Configs/php.conf /etc/php81/php-fpm.d/heimdall.conf
mv /opt/Setup/Configs/phpTimezone.ini /etc/php81/conf.d/04_date_timezone.ini
#Install Heimdall
git clone -b 2.x https://github.com/linuxserver/Heimdall.git /opt/heimdall
@@ -15,4 +15,4 @@ chown -R nginx:nginx /opt/heimdall
#Enable services on boot
rc-update add nginx
rc-update add php-fpm8
rc-update add php-fpm81

View File

@@ -86,7 +86,7 @@ http {
fastcgi_param HTTPS on;
fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true;
fastcgi_pass unix:/run/php-fpm8/php-fpm.sock;
fastcgi_pass unix:/run/php-fpm81/php-fpm.sock;
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
}

View File

@@ -1,7 +1,7 @@
[nextcloud]
user = nginx
group = nginx
listen = /run/php-fpm8/php-fpm.sock
listen = /run/php-fpm81/php-fpm.sock
listen.owner = nginx
listen.group = nginx
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[allow_url_fopen] = Off
php_admin_value[file_uploads] = on
php_admin_value[open_basedir] = /opt/nextcloud/:/var/nextcloud:/run/php-fpm8/php-fpm.sock:/run/redis/redis.sock:/proc/meminfo:/proc/cpuinfo:/dev/urandom:/tmp
php_admin_value[open_basedir] = /opt/nextcloud/:/var/nextcloud:/run/php-fpm81/php-fpm.sock:/run/redis/redis.sock:/proc/meminfo:/proc/cpuinfo:/dev/urandom:/tmp
php_admin_value[session.use_strict_mode] = 1
php_admin_value[session.cookie_httponly] = 1
;HTTPSONLY php_admin_value[session.cookie_samesite] = Strict

View File

@@ -18,24 +18,24 @@ if [ $ThisScriptConfigured = no ]; then
echo "Script is not configured"
exit
fi
sudo -u nginx php8 /opt/nextcloud/occ maintenance:install --database mysql --database-name "$MysqlDatabase" --database-host "$MysqlIP" --database-port "$MysqlPort" --database-user "$MysqlUsername" --database-pass "$MysqlPassword" --database-table-space "" --admin-user "$NextcloudUsername" --admin-pass "$NexcloudPassword" --data-dir /var/nextcloud
sudo -u nginx php81 /opt/nextcloud/occ maintenance:install --database mysql --database-name "$MysqlDatabase" --database-host "$MysqlIP" --database-port "$MysqlPort" --database-user "$MysqlUsername" --database-pass "$MysqlPassword" --database-table-space "" --admin-user "$NextcloudUsername" --admin-pass "$NexcloudPassword" --data-dir /var/nextcloud
sed -n -i '/#SetupBlockStart/{:a;N;/#SetupBlockEnd/!ba;N;s/.*//};p' /etc/nginx/nginx.conf
service nginx reload
sudo -u nginx php8 /opt/nextcloud/occ db:convert-filecache-bigint
sudo -u nginx php8 /opt/nextcloud/occ db:add-missing-indices
#sudo -u nginx php8 /opt/nextcloud/occ app:disable firstrunwizard
sudo -u nginx php8 /opt/nextcloud/occ config:system:set default_language --value=nl
sudo -u nginx php8 /opt/nextcloud/occ config:system:set default_locale --value=nl
sudo -u nginx php8 /opt/nextcloud/occ config:system:set default_phone_region --value=nl
sudo -u nginx php8 /opt/nextcloud/occ config:system:set skeletondirectory --value=
sudo -u nginx php8 /opt/nextcloud/occ config:system:set memcache.local --value='\OC\Memcache\APCu'
sudo -u nginx php8 /opt/nextcloud/occ config:system:set trashbin_retention_obligation --value=30,30
sudo -u nginx php8 /opt/nextcloud/occ config:system:set memcache.distributed --value='\OC\Memcache\Redis'
sudo -u nginx php8 /opt/nextcloud/occ config:system:set memcache.locking --value='\OC\Memcache\Redis'
sudo -u nginx php8 /opt/nextcloud/occ config:system:set redis host --value=localhost
sudo -u nginx php8 /opt/nextcloud/occ config:system:set redis port --value=6379
sudo -u nginx php8 /opt/nextcloud/occ config:system:set trusted_domains 1 --value="$(ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1)"
sudo -u nginx php8 /opt/nextcloud/occ config:system:set overwrite.cli.url --value="$NextcloudWebProto://$(ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1)"
sudo -u nginx php8 /opt/nextcloud/occ config:system:set overwriteprotocol --value="$NextcloudWebProto"
sudo -u nginx php81 /opt/nextcloud/occ db:convert-filecache-bigint
sudo -u nginx php81 /opt/nextcloud/occ db:add-missing-indices
#sudo -u nginx php81 /opt/nextcloud/occ app:disable firstrunwizard
sudo -u nginx php81 /opt/nextcloud/occ config:system:set default_language --value=nl
sudo -u nginx php81 /opt/nextcloud/occ config:system:set default_locale --value=nl
sudo -u nginx php81 /opt/nextcloud/occ config:system:set default_phone_region --value=nl
sudo -u nginx php81 /opt/nextcloud/occ config:system:set skeletondirectory --value=
sudo -u nginx php81 /opt/nextcloud/occ config:system:set memcache.local --value='\OC\Memcache\APCu'
sudo -u nginx php81 /opt/nextcloud/occ config:system:set trashbin_retention_obligation --value=30,30
sudo -u nginx php81 /opt/nextcloud/occ config:system:set memcache.distributed --value='\OC\Memcache\Redis'
sudo -u nginx php81 /opt/nextcloud/occ config:system:set memcache.locking --value='\OC\Memcache\Redis'
sudo -u nginx php81 /opt/nextcloud/occ config:system:set redis host --value=localhost
sudo -u nginx php81 /opt/nextcloud/occ config:system:set redis port --value=6379
sudo -u nginx php81 /opt/nextcloud/occ config:system:set trusted_domains 1 --value="$(ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1)"
sudo -u nginx php81 /opt/nextcloud/occ config:system:set overwrite.cli.url --value="$NextcloudWebProto://$(ifconfig | grep -A 1 'eth0' | tail -1 | cut -d ':' -f 2 | cut -d ' ' -f 1)"
sudo -u nginx php81 /opt/nextcloud/occ config:system:set overwriteprotocol --value="$NextcloudWebProto"

View File

@@ -7,12 +7,12 @@ rm -rf /etc/nginx/conf.d
mv /opt/Setup/Configs/nginx.conf /etc/nginx/nginx.conf
#Configure Php-Cli
sed -i '/memory_limit =/c\memory_limit = 512M' /etc/php8/php.ini
sed -i '/memory_limit =/c\memory_limit = 512M' /etc/php81/php.ini
#Configure Php-Fpm
rm -rf /etc/php8/php-fpm.d/*
mv /opt/Setup/Configs/php.conf /etc/php8/php-fpm.d/nextcloud.conf
mv /opt/Setup/Configs/phpTimezone.ini /etc/php8/conf.d/04_date_timezone.ini
rm -rf /etc/php81/php-fpm.d/*
mv /opt/Setup/Configs/php.conf /etc/php81/php-fpm.d/nextcloud.conf
mv /opt/Setup/Configs/phpTimezone.ini /etc/php81/conf.d/04_date_timezone.ini
#Install Nextcloud
mkdir /opt/nextcloud /var/nextcloud
@@ -20,9 +20,9 @@ tar jxf /opt/Setup/nextcloud.tar.bz2 -C /opt/nextcloud --strip 1
rm -rf /opt/Setup/nextcloud.tar.bz2
chown -R nginx:nginx /opt/nextcloud
chown -R nginx:nginx /var/nextcloud
echo "*/5 * * * * php8 -f /opt/nextcloud/cron.php > /dev/null 2>&1" >> /etc/crontabs/nginx
echo "apc.enable_cli=1" >> /etc/php8/php.ini
echo "*/5 * * * * php81 -f /opt/nextcloud/cron.php > /dev/null 2>&1" >> /etc/crontabs/nginx
echo "apc.enable_cli=1" >> /etc/php81/php.ini
#Enable services on boot
rc-update add nginx
rc-update add php-fpm8
rc-update add php-fpm81
rc-update add redis

View File

@@ -1,3 +1,3 @@
#!/bin/sh
# Update script for updating apps with ProxmoxHelper/ProxMoxToolKit
sudo -u nginx php8 /opt/nextcloud/updater/updater.phar --no-interaction
sudo -u nginx php81 /opt/nextcloud/updater/updater.phar --no-interaction

View File

@@ -36,6 +36,7 @@ This can be done on a privileged Debian CT (make sure to enable the Fuse, Nestin
| nfs | Debian | NFS server |
| duplicati | Debian | Duplicati backup software |
| fileshelter | Debian | FileShelter file shareing software |
| esphome | Debian | ESPHome software to manage wifi-MCUs|
| gitea | Alpine | Gitea server |
| nginx | Alpine | Nginx server for reverse-proxy use |
| ddns | Alpine | DDNS client configured for OVH/OVH-Cloud |
@@ -265,6 +266,9 @@ lxc.mount.entry: /dev/ttyACM-Zwave dev/ttyACM-Zwave none bind,optional,create=fi
## fileshelter
* Available on http://`<ip>`:5091
## esphome
* Available on http://`<ip>`:6052
# Further CT documentation
## iscsi