From 2e07fb6f60abf0017feb2dff98f0cfbc867a762c Mon Sep 17 00:00:00 2001 From: tremor021 Date: Wed, 5 Nov 2025 12:49:47 +0100 Subject: [PATCH 1/6] Refactor: Open WebUI --- ct/openwebui.sh | 66 ++++++++++++++++++++++++ frontend/public/json/openwebui.json | 44 ++++++++++++++++ install/openwebui-install.sh | 78 +++++++++++++++++++++++++++++ 3 files changed, 188 insertions(+) create mode 100644 ct/openwebui.sh create mode 100644 frontend/public/json/openwebui.json create mode 100644 install/openwebui-install.sh diff --git a/ct/openwebui.sh b/ct/openwebui.sh new file mode 100644 index 000000000..ec1122dbe --- /dev/null +++ b/ct/openwebui.sh @@ -0,0 +1,66 @@ +#!/usr/bin/env bash +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +# Copyright (c) 2021-2025 tteck +# Author: tteck | Co-Author: havardthom | Co-Author: Slaviša Arežina (tremor021) +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://openwebui.com/ + +APP="Open WebUI" +var_tags="${var_tags:-ai;interface}" +var_cpu="${var_cpu:-4}" +var_ram="${var_ram:-8192}" +var_disk="${var_disk:-25}" +var_os="${var_os:-debian}" +var_version="${var_version:-13}" +var_unprivileged="${var_unprivileged:-1}" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + if [[ ! -d /root/.open-webui ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + + if [ -x "/usr/bin/ollama" ]; then + msg_info "Updating Ollama" + OLLAMA_VERSION=$(ollama -v | awk '{print $NF}') + RELEASE=$(curl -s https://api.github.com/repos/ollama/ollama/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}') + if [ "$OLLAMA_VERSION" != "$RELEASE" ]; then + msg_info "Stopping Service" + systemctl stop ollama + msg_ok "Stopped Service" + curl -fsSLO -C - https://ollama.com/download/ollama-linux-amd64.tgz + rm -rf /usr/lib/ollama + rm -rf /usr/bin/ollama + tar -C /usr -xzf ollama-linux-amd64.tgz + rm -rf ollama-linux-amd64.tgz + msg_info "Starting Service" + systemctl start ollama + msg_info "Started Service" + msg_ok "Ollama updated to version $RELEASE" + else + msg_ok "Ollama is already up to date." + fi + fi + + msg_info "Restarting Open WebUI to initiate update" + systemctl restart open-webui + msg_ok "Updated successfully!" + exit +} + +start +build_container +description + +msg_ok "Completed Successfully!\n" +echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" +echo -e "${INFO}${YW} Access it using the following URL:${CL}" +echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}" diff --git a/frontend/public/json/openwebui.json b/frontend/public/json/openwebui.json new file mode 100644 index 000000000..a7c5891fb --- /dev/null +++ b/frontend/public/json/openwebui.json @@ -0,0 +1,44 @@ +{ + "name": "Open WebUI", + "slug": "openwebui", + "categories": [ + 20 + ], + "date_created": "2024-10-24", + "type": "ct", + "updateable": true, + "privileged": false, + "interface_port": 8080, + "documentation": "https://docs.openwebui.com/", + "website": "https://openwebui.com/", + "logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/open-webui.webp", + "config_path": "/root/.env", + "description": "OpenWebUI is a self-hosted, web-based interface that allows you to run AI models entirely offline. It integrates with various LLM runners, such as OpenAI and Ollama, and supports features like markdown and LaTeX rendering, model management, and voice/video calls. It also offers multilingual support and the ability to generate images using APIs like DALL-E or ComfyUI", + "install_methods": [ + { + "type": "default", + "script": "ct/openwebui.sh", + "resources": { + "cpu": 4, + "ram": 8192, + "hdd": 25, + "os": "debian", + "version": "13" + } + } + ], + "default_credentials": { + "username": null, + "password": null + }, + "notes": [ + { + "text": "Script contains optional installation of Ollama.", + "type": "info" + }, + { + "text": "Initial run of the application/container can take some time, depending on your host speed, as the application is installed/updated at runtime. Please be patient!", + "type": "warning" + } + ] +} diff --git a/install/openwebui-install.sh b/install/openwebui-install.sh new file mode 100644 index 000000000..ad43ac7c3 --- /dev/null +++ b/install/openwebui-install.sh @@ -0,0 +1,78 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 tteck +# Author: tteck | Co-Author: havardthom | Co-Author: Slaviša Arežina (tremor021) +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://openwebui.com/ + +source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" +color +verb_ip6 +catch_errors +setting_up_container +network_check +update_os + +msg_info "Installing Dependencies" +$STD apt install -y ffmpeg +msg_ok "Installed Dependencies" + +USE_UVX="YES" PYTHON_VERSION="3.12" setup_uv + +read -r -p "${TAB3}Would you like to add Ollama? " prompt +if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then + msg_info "Installing Ollama" + curl -fsSLO -C - https://ollama.com/download/ollama-linux-amd64.tgz + tar -C /usr -xzf ollama-linux-amd64.tgz + rm -rf ollama-linux-amd64.tgz + cat </etc/systemd/system/ollama.service +[Unit] +Description=Ollama Service +After=network-online.target + +[Service] +Type=exec +ExecStart=/usr/bin/ollama serve +Environment=HOME=$HOME +Environment=OLLAMA_HOST=0.0.0.0 +Restart=always +RestartSec=3 + +[Install] +WantedBy=multi-user.target +EOF + systemctl enable -q --now ollama + echo "ENABLE_OLLAMA_API=true" >/root/.env + msg_ok "Installed Ollama" +fi + +msg_info "Creating Service" +cat </etc/systemd/system/open-webui.service +[Unit] +Description=Open WebUI Service +After=network.target + +[Service] +Type=simple +EnvironmentFile=-/root/.env +Environment=DATA_DIR=/root/.open-webui +ExecStart=/usr/local/bin/uvx --python 3.12 open-webui@latest serve +WorkingDirectory=/root +Restart=on-failure +RestartSec=5 +User=root + +[Install] +WantedBy=multi-user.target +EOF +systemctl enable -q --now open-webui +msg_ok "Created Service" + +motd_ssh +customize + +msg_info "Cleaning up" +$STD apt -y autoremove +$STD apt -y autoclean +$STD apt -y clean +msg_ok "Cleaned" From e5febaf1d7a30f49db6d5cea8e49947f1cf6f472 Mon Sep 17 00:00:00 2001 From: tremor021 Date: Wed, 5 Nov 2025 13:28:51 +0100 Subject: [PATCH 2/6] Open WebUI: VE>VED --- ct/openwebui.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ct/openwebui.sh b/ct/openwebui.sh index ec1122dbe..33b315297 100644 --- a/ct/openwebui.sh +++ b/ct/openwebui.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) +source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) # Copyright (c) 2021-2025 tteck # Author: tteck | Co-Author: havardthom | Co-Author: Slaviša Arežina (tremor021) # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE From c5b8d0e4b267e8e5e21d2d2d26985d6ddfaf304f Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Wed, 5 Nov 2025 15:39:08 +0100 Subject: [PATCH 3/6] Delete install/nginxproxymanager-install.sh --- install/nginxproxymanager-install.sh | 180 --------------------------- 1 file changed, 180 deletions(-) delete mode 100644 install/nginxproxymanager-install.sh diff --git a/install/nginxproxymanager-install.sh b/install/nginxproxymanager-install.sh deleted file mode 100644 index 0f18a74e6..000000000 --- a/install/nginxproxymanager-install.sh +++ /dev/null @@ -1,180 +0,0 @@ -#!/usr/bin/env bash - -# Copyright (c) 2021-2025 Community-Scripts ORG -# Author: tteck (tteckster) | Co-Author: CrazyWolf13 -# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://nginxproxymanager.com/ - -source /dev/stdin <<<"$FUNCTIONS_FILE_PATH" -color -verb_ip6 -catch_errors -setting_up_container -network_check -update_os - -msg_info "Installing Dependencies" -$STD apt update -$STD apt -y install \ - ca-certificates \ - apache2-utils \ - logrotate \ - build-essential \ - git -msg_ok "Installed Dependencies" - -msg_info "Installing Python Dependencies" -$STD apt install -y \ - python3 \ - python3-dev \ - python3-pip \ - python3-venv \ - python3-cffi -msg_ok "Installed Python Dependencies" - -msg_info "Setting up Certbot" -$STD python3 -m venv /opt/certbot -$STD /opt/certbot/bin/pip install --upgrade pip setuptools wheel -$STD /opt/certbot/bin/pip install certbot certbot-dns-cloudflare -ln -sf /opt/certbot/bin/certbot /usr/local/bin/certbot -msg_ok "Set up Certbot" - -msg_info "Installing Openresty" -curl -fsSL "https://openresty.org/package/pubkey.gpg" | gpg --dearmor -o /etc/apt/trusted.gpg.d/openresty.gpg -cat <<'EOF' >/etc/apt/sources.list.d/openresty.sources -Types: deb -URIs: http://openresty.org/package/debian/ -Suites: bookworm -Components: openresty -Signed-By: /etc/apt/trusted.gpg.d/openresty.gpg -EOF -$STD apt update -$STD apt -y install openresty -msg_ok "Installed Openresty" - -NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs - -RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest | - grep "tag_name" | - awk '{print substr($2, 3, length($2)-4) }') - -fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager" - -msg_info "Setting up Environment" -ln -sf /usr/bin/python3 /usr/bin/python -ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx -ln -sf /usr/local/openresty/nginx/ /etc/nginx -sed -i "s|\"version\": \"2.0.0\"|\"version\": \"$RELEASE\"|" /opt/nginxproxymanager/backend/package.json -sed -i "s|\"version\": \"2.0.0\"|\"version\": \"$RELEASE\"|" /opt/nginxproxymanager/frontend/package.json -sed -i 's+^daemon+#daemon+g' /opt/nginxproxymanager/docker/rootfs/etc/nginx/nginx.conf -NGINX_CONFS=$(find /opt/nginxproxymanager -type f -name "*.conf") -for NGINX_CONF in $NGINX_CONFS; do - sed -i 's+include conf.d+include /etc/nginx/conf.d+g' "$NGINX_CONF" -done - -mkdir -p /var/www/html /etc/nginx/logs -cp -r /opt/nginxproxymanager/docker/rootfs/var/www/html/* /var/www/html/ -cp -r /opt/nginxproxymanager/docker/rootfs/etc/nginx/* /etc/nginx/ -cp /opt/nginxproxymanager/docker/rootfs/etc/letsencrypt.ini /etc/letsencrypt.ini -cp /opt/nginxproxymanager/docker/rootfs/etc/logrotate.d/nginx-proxy-manager /etc/logrotate.d/nginx-proxy-manager -ln -sf /etc/nginx/nginx.conf /etc/nginx/conf/nginx.conf -rm -f /etc/nginx/conf.d/dev.conf - -mkdir -p /tmp/nginx/body \ - /run/nginx \ - /data/nginx \ - /data/custom_ssl \ - /data/logs \ - /data/access \ - /data/nginx/default_host \ - /data/nginx/default_www \ - /data/nginx/proxy_host \ - /data/nginx/redirection_host \ - /data/nginx/stream \ - /data/nginx/dead_host \ - /data/nginx/temp \ - /var/lib/nginx/cache/public \ - /var/lib/nginx/cache/private \ - /var/cache/nginx/proxy_temp - -chmod -R 777 /var/cache/nginx -chown root /tmp/nginx - -echo resolver "$(awk 'BEGIN{ORS=" "} $1=="nameserver" {print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf);" >/etc/nginx/conf.d/include/resolvers.conf - -if [ ! -f /data/nginx/dummycert.pem ] || [ ! -f /data/nginx/dummykey.pem ]; then - openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 -subj "/O=Nginx Proxy Manager/OU=Dummy Certificate/CN=localhost" -keyout /data/nginx/dummykey.pem -out /data/nginx/dummycert.pem &>/dev/null -fi - -mkdir -p /app/frontend/images -cp -r /opt/nginxproxymanager/backend/* /app -msg_ok "Set up Environment" - -msg_info "Building Frontend" -export NODE_OPTIONS="--max_old_space_size=2048 --openssl-legacy-provider" -cd /opt/nginxproxymanager/frontend -# Replace node-sass with sass in package.json before installation -sed -E -i 's/"node-sass" *: *"([^"]*)"/"sass": "\1"/g' package.json -$STD yarn install --network-timeout 600000 -$STD yarn build -cp -r /opt/nginxproxymanager/frontend/dist/* /app/frontend -cp -r /opt/nginxproxymanager/frontend/public/images/* /app/frontend/images -msg_ok "Built Frontend" - -msg_info "Initializing Backend" -rm -rf /app/config/default.json -if [ ! -f /app/config/production.json ]; then - cat <<'EOF' >/app/config/production.json -{ - "database": { - "engine": "knex-native", - "knex": { - "client": "sqlite3", - "connection": { - "filename": "/data/database.sqlite" - } - } - } -} -EOF -fi -cd /app -$STD yarn install --network-timeout 600000 -msg_ok "Initialized Backend" - -msg_info "Creating Service" -cat <<'EOF' >/lib/systemd/system/npm.service -[Unit] -Description=Nginx Proxy Manager -After=network.target -Wants=openresty.service - -[Service] -Type=simple -Environment=NODE_ENV=production -ExecStartPre=-mkdir -p /tmp/nginx/body /data/letsencrypt-acme-challenge -ExecStart=/usr/bin/node index.js --abort_on_uncaught_exception --max_old_space_size=250 -WorkingDirectory=/app -Restart=on-failure - -[Install] -WantedBy=multi-user.target -EOF -msg_ok "Created Service" - -msg_info "Starting Services" -sed -i 's/user npm/user root/g; s/^pid/#pid/g' /usr/local/openresty/nginx/conf/nginx.conf -sed -r -i 's/^([[:space:]]*)su npm npm/\1#su npm npm/g;' /etc/logrotate.d/nginx-proxy-manager -systemctl enable -q --now openresty -systemctl enable -q --now npm -msg_ok "Started Services" - -motd_ssh -customize - -msg_info "Cleaning up" -systemctl restart openresty -$STD apt -y autoremove -$STD apt -y autoclean -$STD apt -y clean -msg_ok "Cleaned" From b03921eedfc96cef52f9918dc881974fd984f0aa Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Wed, 5 Nov 2025 15:39:20 +0100 Subject: [PATCH 4/6] Delete ct/nginxproxymanager.sh --- ct/nginxproxymanager.sh | 186 ---------------------------------------- 1 file changed, 186 deletions(-) delete mode 100644 ct/nginxproxymanager.sh diff --git a/ct/nginxproxymanager.sh b/ct/nginxproxymanager.sh deleted file mode 100644 index 6eb627a4d..000000000 --- a/ct/nginxproxymanager.sh +++ /dev/null @@ -1,186 +0,0 @@ -#!/usr/bin/env bash -source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) -# Copyright (c) 2021-2025 Community-Script ORG -# Author: tteck (tteckster) | Co-Author: CrazyWolf13 -# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE -# Source: https://nginxproxymanager.com/ - -APP="Nginx Proxy Manager" -var_tags="${var_tags:-proxy}" -var_cpu="${var_cpu:-2}" -var_ram="${var_ram:-2048}" -var_disk="${var_disk:-8}" -var_os="${var_os:-debian}" -var_version="${var_version:-13}" -var_unprivileged="${var_unprivileged:-1}" - -header_info "$APP" -variables -color -catch_errors - -function update_script() { - header_info - check_container_storage - check_container_resources - if [[ ! -f /lib/systemd/system/npm.service ]]; then - msg_error "No ${APP} Installation Found!" - exit - fi - - if command -v node &>/dev/null; then - CURRENT_NODE_VERSION=$(node --version | cut -d'v' -f2 | cut -d'.' -f1) - if [[ "$CURRENT_NODE_VERSION" != "22" ]]; then - systemctl stop openresty - apt-get purge -y nodejs npm - apt-get autoremove -y - rm -rf /usr/local/bin/node /usr/local/bin/npm - rm -rf /usr/local/lib/node_modules - rm -rf ~/.npm - rm -rf /root/.npm - fi - fi - - NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs - - RELEASE=$(curl -fsSL https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest | - grep "tag_name" | - awk '{print substr($2, 3, length($2)-4) }') - - fetch_and_deploy_gh_release "nginxproxymanager" "NginxProxyManager/nginx-proxy-manager" - - msg_info "Stopping Services" - systemctl stop openresty - systemctl stop npm - msg_ok "Stopped Services" - - msg_info "Cleaning old files" - $STD rm -rf /app \ - /var/www/html \ - /etc/nginx \ - /var/log/nginx \ - /var/lib/nginx \ - /var/cache/nginx - msg_ok "Cleaned old files" - - msg_info "Setting up Environment" - ln -sf /usr/bin/python3 /usr/bin/python - ln -sf /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx - ln -sf /usr/local/openresty/nginx/ /etc/nginx - sed -i "s|\"version\": \"2.0.0\"|\"version\": \"$RELEASE\"|" /opt/nginxproxymanager/backend/package.json - sed -i "s|\"version\": \"2.0.0\"|\"version\": \"$RELEASE\"|" /opt/nginxproxymanager/frontend/package.json - sed -i 's+^daemon+#daemon+g' /opt/nginxproxymanager/docker/rootfs/etc/nginx/nginx.conf - NGINX_CONFS=$(find /opt/nginxproxymanager -type f -name "*.conf") - for NGINX_CONF in $NGINX_CONFS; do - sed -i 's+include conf.d+include /etc/nginx/conf.d+g' "$NGINX_CONF" - done - - mkdir -p /var/www/html /etc/nginx/logs - cp -r /opt/nginxproxymanager/docker/rootfs/var/www/html/* /var/www/html/ - cp -r /opt/nginxproxymanager/docker/rootfs/etc/nginx/* /etc/nginx/ - cp /opt/nginxproxymanager/docker/rootfs/etc/letsencrypt.ini /etc/letsencrypt.ini - cp /opt/nginxproxymanager/docker/rootfs/etc/logrotate.d/nginx-proxy-manager /etc/logrotate.d/nginx-proxy-manager - ln -sf /etc/nginx/nginx.conf /etc/nginx/conf/nginx.conf - rm -f /etc/nginx/conf.d/dev.conf - - mkdir -p /tmp/nginx/body \ - /run/nginx \ - /data/nginx \ - /data/custom_ssl \ - /data/logs \ - /data/access \ - /data/nginx/default_host \ - /data/nginx/default_www \ - /data/nginx/proxy_host \ - /data/nginx/redirection_host \ - /data/nginx/stream \ - /data/nginx/dead_host \ - /data/nginx/temp \ - /var/lib/nginx/cache/public \ - /var/lib/nginx/cache/private \ - /var/cache/nginx/proxy_temp - - chmod -R 777 /var/cache/nginx - chown root /tmp/nginx - - echo resolver "$(awk 'BEGIN{ORS=" "} $1=="nameserver" {print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf);" >/etc/nginx/conf.d/include/resolvers.conf - - if [ ! -f /data/nginx/dummycert.pem ] || [ ! -f /data/nginx/dummykey.pem ]; then - openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 -subj "/O=Nginx Proxy Manager/OU=Dummy Certificate/CN=localhost" -keyout /data/nginx/dummykey.pem -out /data/nginx/dummycert.pem &>/dev/null - fi - - mkdir -p /app/frontend/images - cp -r /opt/nginxproxymanager/backend/* /app - msg_ok "Set up Environment" - - msg_info "Building Frontend" - export NODE_OPTIONS="--max_old_space_size=2048 --openssl-legacy-provider" - cd /opt/nginxproxymanager/frontend - # Replace node-sass with sass in package.json before installation - sed -E -i 's/"node-sass" *: *"([^"]*)"/"sass": "\1"/g' package.json - $STD yarn install --network-timeout 600000 - $STD yarn build - cp -r /opt/nginxproxymanager/frontend/dist/* /app/frontend - cp -r /opt/nginxproxymanager/frontend/public/images/* /app/frontend/images - msg_ok "Built Frontend" - - msg_info "Initializing Backend" - rm -rf /app/config/default.json - if [ ! -f /app/config/production.json ]; then - cat <<'EOF' >/app/config/production.json -{ - "database": { - "engine": "knex-native", - "knex": { - "client": "sqlite3", - "connection": { - "filename": "/data/database.sqlite" - } - } - } -} -EOF - fi - cd /app - $STD yarn install --network-timeout 600000 - msg_ok "Initialized Backend" - - msg_info "Updating Certbot" - [ -f /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg ] && rm -f /etc/apt/trusted.gpg.d/openresty-archive-keyring.gpg - [ -f /etc/apt/sources.list.d/openresty.list ] && rm -f /etc/apt/sources.list.d/openresty.list - [ ! -f /etc/apt/trusted.gpg.d/openresty.gpg ] && curl -fsSL https://openresty.org/package/pubkey.gpg | gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/openresty.gpg - [ ! -f /etc/apt/sources.list.d/openresty.sources ] && cat <<'EOF' >/etc/apt/sources.list.d/openresty.sources -Types: deb -URIs: http://openresty.org/package/debian/ -Suites: bookworm -Components: openresty -Signed-By: /etc/apt/trusted.gpg.d/openresty.gpg -EOF - $STD apt update - $STD apt -y install openresty - if [ -d /opt/certbot ]; then - $STD /opt/certbot/bin/pip install --upgrade pip setuptools wheel - $STD /opt/certbot/bin/pip install --upgrade certbot certbot-dns-cloudflare - fi - msg_ok "Updated Certbot" - - msg_info "Starting Services" - sed -i 's/user npm/user root/g; s/^pid/#pid/g' /usr/local/openresty/nginx/conf/nginx.conf - sed -r -i 's/^([[:space:]]*)su npm npm/\1#su npm npm/g;' /etc/logrotate.d/nginx-proxy-manager - systemctl enable -q --now openresty - systemctl enable -q --now npm - systemctl restart openresty - msg_ok "Started Services" - - msg_ok "Updated successfully!" - exit -} - -start -build_container -description - -msg_ok "Completed Successfully!\n" -echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" -echo -e "${INFO}${YW} Access it using the following URL:${CL}" -echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:81${CL}" From e351a46391621aeef3698f234d5fc8966d69841b Mon Sep 17 00:00:00 2001 From: Tobias <96661824+CrazyWolf13@users.noreply.github.com> Date: Wed, 5 Nov 2025 15:39:38 +0100 Subject: [PATCH 5/6] Delete ct/headers/nginxproxymanager --- ct/headers/nginxproxymanager | 6 ------ 1 file changed, 6 deletions(-) delete mode 100644 ct/headers/nginxproxymanager diff --git a/ct/headers/nginxproxymanager b/ct/headers/nginxproxymanager deleted file mode 100644 index d68d0c9d8..000000000 --- a/ct/headers/nginxproxymanager +++ /dev/null @@ -1,6 +0,0 @@ - _ __ _ ____ __ ___ - / | / /___ _(_)___ _ __ / __ \_________ _ ____ __ / |/ /___ _____ ____ _____ ____ _____ - / |/ / __ `/ / __ \| |/_/ / /_/ / ___/ __ \| |/_/ / / / / /|_/ / __ `/ __ \/ __ `/ __ `/ _ \/ ___/ - / /| / /_/ / / / / /> < / ____/ / / /_/ /> Date: Wed, 5 Nov 2025 14:40:22 +0000 Subject: [PATCH 6/6] Update .app files --- ct/headers/openwebui | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 ct/headers/openwebui diff --git a/ct/headers/openwebui b/ct/headers/openwebui new file mode 100644 index 000000000..0097a279b --- /dev/null +++ b/ct/headers/openwebui @@ -0,0 +1,6 @@ + ____ _ __ __ __ ______ + / __ \____ ___ ____ | | / /__ / /_ / / / / _/ + / / / / __ \/ _ \/ __ \ | | /| / / _ \/ __ \/ / / // / +/ /_/ / /_/ / __/ / / / | |/ |/ / __/ /_/ / /_/ // / +\____/ .___/\___/_/ /_/ |__/|__/\___/_.___/\____/___/ + /_/