From 824710ddd4e81dd0934346be270d92585ff0454f Mon Sep 17 00:00:00 2001 From: tteckster Date: Mon, 21 Oct 2024 12:59:55 -0400 Subject: [PATCH 1/9] Update bunkerweb-install.sh Update NGINX version to v1.26.2 --- install/bunkerweb-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/bunkerweb-install.sh b/install/bunkerweb-install.sh index aeb4e587..c195030e 100644 --- a/install/bunkerweb-install.sh +++ b/install/bunkerweb-install.sh @@ -26,7 +26,7 @@ msg_info "Installing Nginx" wget -qO- https://nginx.org/keys/nginx_signing.key | gpg --dearmor >/usr/share/keyrings/nginx-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian $(lsb_release -cs) nginx" >/etc/apt/sources.list.d/nginx.list $STD apt-get update -$STD apt-get install -y nginx=1.26.1* +$STD apt-get install -y nginx=1.26.2* msg_ok "Installed Nginx" RELEASE=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') From d11ad56158578e7a13f5652c3ed5e19d148b39da Mon Sep 17 00:00:00 2001 From: tteckster Date: Mon, 21 Oct 2024 13:02:14 -0400 Subject: [PATCH 2/9] Update bunkerweb.sh fixes https://github.com/tteck/Proxmox/issues/3942 --- ct/bunkerweb.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ct/bunkerweb.sh b/ct/bunkerweb.sh index 42f0e50f..98a80963 100644 --- a/ct/bunkerweb.sh +++ b/ct/bunkerweb.sh @@ -66,7 +66,7 @@ Pin: version ${RELEASE} Pin-Priority: 1001 EOF apt-get update - apt-get install -y nginx=1.26.1* + apt-get install -y nginx=1.26.2* apt-get install -y bunkerweb=${RELEASE} echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated ${APP} to ${RELEASE}" From 34917b15f5bbc21b6461c61c1581e48d792e361a Mon Sep 17 00:00:00 2001 From: tteckster Date: Mon, 21 Oct 2024 21:20:52 -0400 Subject: [PATCH 3/9] Update peanut-install.sh pin version v2.6.1 (test) --- install/peanut-install.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/peanut-install.sh b/install/peanut-install.sh index f32e764f..910a2ff8 100644 --- a/install/peanut-install.sh +++ b/install/peanut-install.sh @@ -35,7 +35,7 @@ msg_ok "Installed NUT" msg_info "Installing Peanut" RELEASE=$(curl -sL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4) -wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE} +wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/v2.6.1 mkdir -p /opt/peanut tar -xzf peanut.tar.gz -C /opt/peanut --strip-components 1 rm peanut.tar.gz @@ -76,4 +76,4 @@ customize msg_info "Cleaning up" $STD apt-get -y autoremove $STD apt-get -y autoclean -msg_ok "Cleaned" \ No newline at end of file +msg_ok "Cleaned" From c9f7f6447dd89434cac8ef92de086295a25daf9c Mon Sep 17 00:00:00 2001 From: tteckster Date: Mon, 21 Oct 2024 21:29:20 -0400 Subject: [PATCH 4/9] Update peanut-install.sh revert test --- install/peanut-install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/peanut-install.sh b/install/peanut-install.sh index 910a2ff8..1db21f0a 100644 --- a/install/peanut-install.sh +++ b/install/peanut-install.sh @@ -35,7 +35,7 @@ msg_ok "Installed NUT" msg_info "Installing Peanut" RELEASE=$(curl -sL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4) -wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/v2.6.1 +wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE} mkdir -p /opt/peanut tar -xzf peanut.tar.gz -C /opt/peanut --strip-components 1 rm peanut.tar.gz From aadcb5b264f43f175ade3a26bf92f7c89b93c675 Mon Sep 17 00:00:00 2001 From: Carmine <63487881+CarmineCodes@users.noreply.github.com> Date: Tue, 22 Oct 2024 11:46:56 -0400 Subject: [PATCH 5/9] Update USER_SUBMITTED_GUIDES.md (#3948) --- USER_SUBMITTED_GUIDES.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/USER_SUBMITTED_GUIDES.md b/USER_SUBMITTED_GUIDES.md index ff89b37d..a1a3aae9 100644 --- a/USER_SUBMITTED_GUIDES.md +++ b/USER_SUBMITTED_GUIDES.md @@ -40,3 +40,5 @@ [Proxmox Homelab Series]() [The fastest installation of Docker and Portainer on Proxmox VE](https://lavr.site/en-fastest-install-docker-portainer-proxmox/) + +[How To Setup Proxmox Backuper Server Using Helper Scripts]() From 226697f8106494f96ceda88436bfb87273c6d991 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A5vard=20Gj=C3=B8by=20Thom?= <34199185+havardthom@users.noreply.github.com> Date: Tue, 22 Oct 2024 18:39:54 +0200 Subject: [PATCH 6/9] Add new LXC: Open WebUI (#3944) --- ct/openwebui.sh | 84 ++++++++++++++++++++++++++++++++++++ install/openwebui-install.sh | 81 ++++++++++++++++++++++++++++++++++ 2 files changed, 165 insertions(+) create mode 100644 ct/openwebui.sh create mode 100644 install/openwebui-install.sh diff --git a/ct/openwebui.sh b/ct/openwebui.sh new file mode 100644 index 00000000..051c42f6 --- /dev/null +++ b/ct/openwebui.sh @@ -0,0 +1,84 @@ +#!/usr/bin/env bash +source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func) +# Copyright (c) 2021-2024 tteck +# Author: tteck +# Co-Author: havardthom +# License: MIT +# https://github.com/tteck/Proxmox/raw/main/LICENSE + +function header_info { +clear +cat <<"EOF" + ____ _ __ __ __ ______ + / __ \____ ___ ____ | | / /__ / /_ / / / / _/ + / / / / __ \/ _ \/ __ \ | | /| / / _ \/ __ \/ / / // / +/ /_/ / /_/ / __/ / / / | |/ |/ / __/ /_/ / /_/ // / +\____/ .___/\___/_/ /_/ |__/|__/\___/_.___/\____/___/ + /_/ + +EOF +} +header_info +echo -e "Loading..." +APP="Open WebUI" +var_disk="16" +var_cpu="4" +var_ram="4096" +var_os="debian" +var_version="12" +variables +color +catch_errors + +function default_settings() { + CT_TYPE="1" + PW="" + CT_ID=$NEXTID + HN=$NSAPP + DISK_SIZE="$var_disk" + CORE_COUNT="$var_cpu" + RAM_SIZE="$var_ram" + BRG="vmbr0" + NET="dhcp" + GATE="" + APT_CACHER="" + APT_CACHER_IP="" + DISABLEIP6="no" + MTU="" + SD="" + NS="" + MAC="" + VLAN="" + SSH="no" + VERB="no" + echo_default +} + +function update_script() { +header_info +if [[ ! -d /opt/open-webui ]]; then msg_error "No ${APP} Installation Found!"; exit; fi +msg_info "Updating ${APP} (Patience)" +cd /opt/open-webui +output=$(git pull --no-rebase) +if echo "$output" | grep -q "Already up to date." +then + msg_ok "$APP is already up to date." + exit +fi +systemctl stop open-webui.service +npm install &>/dev/null +npm run build &>/dev/null +cd ./backend +pip install -r requirements.txt -U &>/dev/null +systemctl start open-webui.service +msg_ok "Updated Successfully" +exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${APP} should be reachable by going to the following URL. + ${BL}http://${IP}:8080${CL} \n" diff --git a/install/openwebui-install.sh b/install/openwebui-install.sh new file mode 100644 index 00000000..a5edd864 --- /dev/null +++ b/install/openwebui-install.sh @@ -0,0 +1,81 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2024 tteck +# Author: tteck +# Co-Author: havardthom +# License: MIT +# https://github.com/tteck/Proxmox/raw/main/LICENSE + +source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +msg_info "Installing Dependencies" +$STD apt-get install -y curl +$STD apt-get install -y sudo +$STD apt-get install -y mc +$STD apt-get install -y gpg +$STD apt-get install -y git +msg_ok "Installed Dependencies" + +msg_info "Installing Python3 Dependencies" +$STD apt-get install -y --no-install-recommends \ + python3 \ + python3-pip +msg_ok "Installed Python3 Dependencies" + +msg_info "Setting up Node.js Repository" +mkdir -p /etc/apt/keyrings +curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg +echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list +msg_ok "Set up Node.js Repository" + +msg_info "Installing Node.js" +$STD apt-get update +$STD apt-get install -y nodejs +msg_ok "Installed Node.js" + +msg_info "Installing Open WebUI (Patience)" +$STD git clone https://github.com/open-webui/open-webui.git /opt/open-webui +cd /opt/open-webui/backend +$STD pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu +$STD pip3 install -r requirements.txt -U +cd /opt/open-webui +cp .env.example .env +cat </opt/open-webui/.env +ENV=prod +ENABLE_OLLAMA_API=false +EOF +$STD npm install +$STD npm run build +msg_ok "Installed Open WebUI" + +msg_info "Creating Service" +cat </etc/systemd/system/open-webui.service +[Unit] +Description=Open WebUI Service +After=network.target + +[Service] +Type=exec +WorkingDirectory=/opt/open-webui +EnvironmentFile=/opt/open-webui/.env +ExecStart=/opt/open-webui/backend/start.sh + +[Install] +WantedBy=multi-user.target +EOF +systemctl enable -q --now open-webui.service +msg_ok "Created Service" + +motd_ssh +customize + +msg_info "Cleaning up" +$STD apt-get -y autoremove +$STD apt-get -y autoclean +msg_ok "Cleaned" From 0ab315182519b8dca28e4c7d08fdbb9f3a3dd579 Mon Sep 17 00:00:00 2001 From: tteckster Date: Tue, 22 Oct 2024 15:26:32 -0400 Subject: [PATCH 7/9] Update vaultwarden.sh tweak --- ct/vaultwarden.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ct/vaultwarden.sh b/ct/vaultwarden.sh index 612a20ec..95b92bbb 100644 --- a/ct/vaultwarden.sh +++ b/ct/vaultwarden.sh @@ -57,7 +57,7 @@ function update_script() { msg_error "No ${APP} Installation Found!" exit fi - whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75 + VAULT=$(curl -s https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') @@ -73,7 +73,7 @@ function update_script() { header_info if [ "$UPD" == "1" ]; then - echo -e "\n ⚠️ Ensure you set 4vCPU & 4096MiB RAM minimum!!! \n" + whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75 msg_info "Stopping Vaultwarden" systemctl stop vaultwarden.service msg_ok "Stopped Vaultwarden" From b4732cd8e979a995babfa283eaf3af7a63bdda50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= Date: Tue, 22 Oct 2024 16:38:48 -0400 Subject: [PATCH 8/9] Fix Peanut script following latest release (v3) (#3953) --- install/peanut-install.sh | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/install/peanut-install.sh b/install/peanut-install.sh index 1db21f0a..2ba26e6e 100644 --- a/install/peanut-install.sh +++ b/install/peanut-install.sh @@ -44,6 +44,15 @@ $STD npm install -g pnpm $STD pnpm i $STD pnpm run build cp -r .next/static .next/standalone/.next/ +mkdir -p /opt/peanut/.next/standalone/config +cat </opt/peanut/.next/standalone/config/settings.yml +WEB_HOST: 0.0.0.0 +WEB_PORT: 3000 +NUT_HOST: 0.0.0.0 +NUT_PORT: 3493 +EOF +mkdir -p /etc/peanut +ln -sf /opt/peanut/.next/standalone/config/settings.yml /etc/peanut/settings.yml msg_ok "Installed Peanut" msg_info "Creating Service" @@ -57,10 +66,10 @@ Restart=always RestartSec=5 Type=simple Environment="NODE_ENV=production" -Environment="NUT_HOST=localhost" -Environment="NUT_PORT=3493" -Environment="WEB_HOST=0.0.0.0" -Environment="WEB_PORT=3000" +#Environment="NUT_HOST=localhost" +#Environment="NUT_PORT=3493" +#Environment="WEB_HOST=0.0.0.0" +#Environment="WEB_PORT=3000" WorkingDirectory=/opt/peanut ExecStart=node /opt/peanut/.next/standalone/server.js TimeoutStopSec=30 From 612979a04059d215f570aaa1bdace88bc0ad4b53 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9mi=20B=C3=A9dard-Couture?= Date: Tue, 22 Oct 2024 18:13:10 -0400 Subject: [PATCH 9/9] Fix update path for PeaNUT following v3 fix (#3954) --- ct/peanut.sh | 2 ++ install/peanut-install.sh | 6 +++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ct/peanut.sh b/ct/peanut.sh index d776df0d..f327e0e8 100644 --- a/ct/peanut.sh +++ b/ct/peanut.sh @@ -68,6 +68,8 @@ function update_script() { pnpm i &>/dev/null pnpm run build &>/dev/null cp -r .next/static .next/standalone/.next/ + mkdir -p /opt/peanut/.next/standalone/config + ln -sf /etc/peanut/settings.yml /opt/peanut/.next/standalone/config/settings.yml systemctl start peanut echo "${RELEASE}" >/opt/${APP}_version.txt msg_ok "Updated $APP to ${RELEASE}" diff --git a/install/peanut-install.sh b/install/peanut-install.sh index 2ba26e6e..fa4a6215 100644 --- a/install/peanut-install.sh +++ b/install/peanut-install.sh @@ -45,14 +45,14 @@ $STD pnpm i $STD pnpm run build cp -r .next/static .next/standalone/.next/ mkdir -p /opt/peanut/.next/standalone/config -cat </opt/peanut/.next/standalone/config/settings.yml +mkdir -p /etc/peanut/ +cat </etc/peanut/settings.yml WEB_HOST: 0.0.0.0 WEB_PORT: 3000 NUT_HOST: 0.0.0.0 NUT_PORT: 3493 EOF -mkdir -p /etc/peanut -ln -sf /opt/peanut/.next/standalone/config/settings.yml /etc/peanut/settings.yml +ln -sf /etc/peanut/settings.yml /opt/peanut/.next/standalone/config/settings.yml msg_ok "Installed Peanut" msg_info "Creating Service"