diff --git a/ct/bar-assistant.sh b/ct/bar-assistant.sh index 4860a29..53c513a 100644 --- a/ct/bar-assistant.sh +++ b/ct/bar-assistant.sh @@ -8,10 +8,10 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/ # Source: https://www.meilisearch.com/ APP="Bar-Assistant" -var_tags="${var_tags:-network}" -var_cpu="${var_cpu:-4}" -var_ram="${var_ram:-4096}" -var_disk="${var_disk:-15}" +var_tags="${var_tags:-inventory;drinks}" +var_cpu="${var_cpu:-2}" +var_ram="${var_ram:-2048}" +var_disk="${var_disk:-4}" var_os="${var_os:-debian}" var_version="${var_version:-12}" var_unprivileged="${var_unprivileged:-1}" diff --git a/ct/headers/openziti-controller b/ct/headers/openziti-controller new file mode 100644 index 0000000..ec0709a --- /dev/null +++ b/ct/headers/openziti-controller @@ -0,0 +1,6 @@ + _ __ _ __ ____ + ____ ____ ___ ____ ____ (_) /_(_) _________ ____ / /__________ / / /__ _____ + / __ \/ __ \/ _ \/ __ \/_ / / / __/ /_____/ ___/ __ \/ __ \/ __/ ___/ __ \/ / / _ \/ ___/ +/ /_/ / /_/ / __/ / / / / /_/ / /_/ /_____/ /__/ /_/ / / / / /_/ / / /_/ / / / __/ / +\____/ .___/\___/_/ /_/ /___/_/\__/_/ \___/\____/_/ /_/\__/_/ \____/_/_/\___/_/ + /_/ diff --git a/ct/openziti-controller.sh b/ct/openziti-controller.sh new file mode 100644 index 0000000..1a6aa25 --- /dev/null +++ b/ct/openziti-controller.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash +source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVED/main/misc/build.func) +# Copyright (c) 2021-2025 community-scripts ORG +# Author: emoscardini +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/openziti/ziti + +APP="openziti-controller" +var_tags="network;openziti-controller" +var_cpu="2" +var_ram="1024" +var_disk="8" +var_os="debian" +var_version="12" +var_unprivileged="1" + +header_info "$APP" +variables +color +catch_errors + +function update_script() { + header_info + check_container_storage + check_container_resources + if [[ ! -d /opt/openziti ]]; then + msg_error "No ${APP} Installation Found!" + exit + fi + msg_info "Updating $APP LXC" + $STD apt-get update + $STD apt-get -y upgrade + msg_ok "Updated $APP LXC" + 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}https://${IP}:/zac${CL}" \ No newline at end of file diff --git a/frontend/public/json/openziti-controller.json b/frontend/public/json/openziti-controller.json new file mode 100644 index 0000000..2089e67 --- /dev/null +++ b/frontend/public/json/openziti-controller.json @@ -0,0 +1,39 @@ +{ + "name": "openziti-controller", + "slug": "openziti-controller", + "categories": [ + 4 + ], + "date_created": "2025-03-20", + "type": "ct", + "updateable": true, + "privileged": false, + "interface_port": null, + "documentation": "https://openziti.io/docs/reference/tunnelers/docker/", + "website": "https://www.openziti.io/", + "logo": "https://raw.githubusercontent.com/openziti/ziti-doc/main/docusaurus/static/img/ziti-logo-dark.svg", + "description": "OpenZiti is an open-source, zero trust networking platform that enables secure connectivity between applications, services, and devices. It provides secure, encrypted connections between clients and services, and can be used to create secure, zero trust networks.", + "install_methods": [ + { + "type": "default", + "script": "ct/openziti-controller.sh", + "resources": { + "cpu": 2, + "ram": 1024, + "hdd": 8, + "os": "debian", + "version": "12" + } + } + ], + "default_credentials": { + "username": null, + "password": null + }, + "notes": [ + { + "text": "The Openziti Controller installation will prompt for configuration settings during installation.", + "type": "info" + } + ] +} diff --git a/frontend/public/json/versions.json b/frontend/public/json/versions.json index 6ffe8cc..38a1dad 100644 --- a/frontend/public/json/versions.json +++ b/frontend/public/json/versions.json @@ -1,19 +1,124 @@ [ + { + "name": "TriliumNext/Notes", + "version": "v0.92.5", + "date": "2025-03-30T12:32:43Z" + }, + { + "name": "icereed/paperless-gpt", + "version": "v0.14.2", + "date": "2025-03-30T19:50:38Z" + }, + { + "name": "StarFleetCPTN/GoMFT", + "version": "v0.2.4", + "date": "2025-03-30T19:46:08Z" + }, + { + "name": "semaphoreui/semaphore", + "version": "v2.13.3", + "date": "2025-03-30T19:24:44Z" + }, + { + "name": "louislam/dockge", + "version": "1.5.0", + "date": "2025-03-30T17:42:59Z" + }, + { + "name": "pi-hole/pi-hole", + "version": "v6.0.6", + "date": "2025-03-30T16:59:06Z" + }, + { + "name": "sabnzbd/sabnzbd", + "version": "4.5.0", + "date": "2025-03-30T16:17:11Z" + }, + { + "name": "Part-DB/Part-DB-server", + "version": "v1.17.0", + "date": "2025-03-30T14:21:53Z" + }, + { + "name": "openhab/openhab-core", + "version": "4.3.4", + "date": "2025-03-30T13:32:38Z" + }, + { + "name": "pocketbase/pocketbase", + "version": "v0.26.6", + "date": "2025-03-30T08:02:19Z" + }, + { + "name": "Prowlarr/Prowlarr", + "version": "v1.32.2.4987", + "date": "2025-03-16T09:41:37Z" + }, + { + "name": "Readarr/Readarr", + "version": "v2.0.0.4645", + "date": "2017-03-07T18:56:06Z" + }, + { + "name": "Lidarr/Lidarr", + "version": "v2.10.3.4602", + "date": "2025-03-23T11:00:37Z" + }, + { + "name": "Radarr/Radarr", + "version": "v5.21.1.9799", + "date": "2025-03-24T15:52:12Z" + }, + { + "name": "aceberg/WatchYourLAN", + "version": "2.1.2-alpine", + "date": "2025-03-30T06:25:22Z" + }, + { + "name": "Jackett/Jackett", + "version": "v0.22.1709", + "date": "2025-03-30T05:51:21Z" + }, + { + "name": "pocket-id/pocket-id", + "version": "v0.45.0", + "date": "2025-03-29T23:12:22Z" + }, + { + "name": "keycloak/keycloak", + "version": "26.1.4", + "date": "2025-03-13T15:41:42Z" + }, + { + "name": "glanceapp/glance", + "version": "v0.7.9", + "date": "2025-03-29T18:08:11Z" + }, + { + "name": "home-assistant/core", + "version": "2025.3.4", + "date": "2025-03-21T20:22:46Z" + }, { "name": "theonedev/onedev", "version": "v11.8.4", - "date": "2025-03-29T08:28:12Z" + "date": "2025-03-29T13:37:15Z" + }, + { + "name": "runtipi/runtipi", + "version": "nightly", + "date": "2025-03-29T12:57:40Z" + }, + { + "name": "syncthing/syncthing", + "version": "v2.0.0-beta.1", + "date": "2025-03-29T12:53:28Z" }, { "name": "tobychui/zoraxy", "version": "v3.1.9", "date": "2025-03-01T02:24:33Z" }, - { - "name": "Jackett/Jackett", - "version": "v0.22.1705", - "date": "2025-03-29T05:54:06Z" - }, { "name": "inspircd/inspircd", "version": "v4.7.0", @@ -49,11 +154,6 @@ "version": "v4.2.3", "date": "2025-02-09T23:07:48Z" }, - { - "name": "home-assistant/core", - "version": "2025.3.4", - "date": "2025-03-21T20:22:46Z" - }, { "name": "gristlabs/grist-core", "version": "v1.5.0", @@ -69,16 +169,6 @@ "version": "v5.6.1", "date": "2025-03-28T18:40:22Z" }, - { - "name": "keycloak/keycloak", - "version": "26.1.4", - "date": "2025-03-13T15:41:42Z" - }, - { - "name": "pocketbase/pocketbase", - "version": "v0.26.5", - "date": "2025-03-28T17:41:23Z" - }, { "name": "NodeBB/NodeBB", "version": "v4.2.0", @@ -129,11 +219,6 @@ "version": "v1.10.0-rc.3", "date": "2025-03-28T03:45:54Z" }, - { - "name": "StarFleetCPTN/GoMFT", - "version": "v.0.2.3", - "date": "2025-03-27T23:54:49Z" - }, { "name": "Bubka/2FAuth", "version": "v5.5.0", @@ -149,11 +234,6 @@ "version": "2025.2", "date": "2025-03-27T19:21:13Z" }, - { - "name": "TriliumNext/Notes", - "version": "v0.92.4", - "date": "2025-03-17T16:00:19Z" - }, { "name": "fallenbagel/jellyseerr", "version": "preview-music-support", @@ -189,11 +269,6 @@ "version": "7.2.5", "date": "2025-03-27T11:06:48Z" }, - { - "name": "syncthing/syncthing", - "version": "v1.29.3", - "date": "2025-03-12T11:56:30Z" - }, { "name": "evcc-io/evcc", "version": "0.202.1", @@ -229,21 +304,6 @@ "version": "v0.6.3-rc1", "date": "2025-03-26T20:39:01Z" }, - { - "name": "runtipi/runtipi", - "version": "v3.10.0", - "date": "2025-03-15T14:38:16Z" - }, - { - "name": "glanceapp/glance", - "version": "v0.7.8", - "date": "2025-03-26T19:59:07Z" - }, - { - "name": "semaphoreui/semaphore", - "version": "v2.13.2", - "date": "2025-03-26T19:13:48Z" - }, { "name": "dgtlmoon/changedetection.io", "version": "0.49.9", @@ -294,16 +354,6 @@ "version": "v0.34.1", "date": "2025-03-25T18:11:12Z" }, - { - "name": "aceberg/WatchYourLAN", - "version": "2.1.1", - "date": "2025-03-25T17:21:41Z" - }, - { - "name": "pocket-id/pocket-id", - "version": "v0.44.0", - "date": "2025-03-25T16:09:10Z" - }, { "name": "dotnetfactory/fluid-calendar", "version": "v1.3.0", @@ -324,11 +374,6 @@ "version": "v1.6.8", "date": "2025-03-25T13:33:10Z" }, - { - "name": "icereed/paperless-gpt", - "version": "v0.14.1", - "date": "2025-03-25T10:09:14Z" - }, { "name": "VictoriaMetrics/VictoriaMetrics", "version": "pmm-6401-v1.114.0", @@ -364,11 +409,6 @@ "version": "v0.9.0", "date": "2025-03-24T18:25:37Z" }, - { - "name": "Radarr/Radarr", - "version": "v5.21.1.9799", - "date": "2025-03-24T15:52:12Z" - }, { "name": "Graylog2/graylog2-server", "version": "6.2.0-beta.2", @@ -399,21 +439,11 @@ "version": "v1.17.0", "date": "2025-03-24T00:46:32Z" }, - { - "name": "Lidarr/Lidarr", - "version": "v2.10.3.4602", - "date": "2025-03-23T11:00:37Z" - }, { "name": "nicolargo/glances", "version": "v4.3.1", "date": "2025-03-23T09:02:54Z" }, - { - "name": "Prowlarr/Prowlarr", - "version": "v1.32.2.4987", - "date": "2025-03-16T09:41:37Z" - }, { "name": "usememos/memos", "version": "v0.24.2", @@ -429,11 +459,6 @@ "version": "v4.2.6", "date": "2025-03-21T21:20:29Z" }, - { - "name": "sabnzbd/sabnzbd", - "version": "4.4.1", - "date": "2024-12-20T13:21:31Z" - }, { "name": "leiweibau/Pi.Alert", "version": "v2025-03-21", @@ -659,11 +684,6 @@ "version": "v21.0.0.0", "date": "2025-03-09T12:25:44Z" }, - { - "name": "Readarr/Readarr", - "version": "v2.0.0.4645", - "date": "2017-03-07T18:56:06Z" - }, { "name": "YuukanOO/seelf", "version": "v2.4.2", @@ -724,11 +744,6 @@ "version": "10.1.39", "date": "2025-03-04T19:05:18Z" }, - { - "name": "pi-hole/pi-hole", - "version": "v6.0.5", - "date": "2025-03-04T17:28:41Z" - }, { "name": "sysadminsmedia/homebox", "version": "v0.18.0", @@ -764,11 +779,6 @@ "version": "v6.11.2", "date": "2025-02-26T14:54:49Z" }, - { - "name": "Part-DB/Part-DB-server", - "version": "v1.16.1", - "date": "2025-02-26T11:29:15Z" - }, { "name": "silverbulletmd/silverbullet", "version": "0.10.4", @@ -814,11 +824,6 @@ "version": "5.6.1", "date": "2025-02-23T20:39:48Z" }, - { - "name": "openhab/openhab-core", - "version": "5.0.0.M1", - "date": "2025-02-23T14:55:36Z" - }, { "name": "outline/outline", "version": "v0.82.1-15", @@ -1184,11 +1189,6 @@ "version": "v4.4.3", "date": "2024-04-06T12:24:35Z" }, - { - "name": "louislam/dockge", - "version": "1.4.2", - "date": "2024-01-21T17:02:52Z" - }, { "name": "hyperion-project/hyperion.ng", "version": "2.0.16", diff --git a/install/bar-assistant-install.sh b/install/bar-assistant-install.sh index 00ff97b..bda7a06 100644 --- a/install/bar-assistant-install.sh +++ b/install/bar-assistant-install.sh @@ -24,6 +24,20 @@ $STD apt-get install -y \ nginx msg_ok "Installed Dependencies" +msg_info "Adding PHP8.3 Repository" +$STD curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb +$STD dpkg -i /tmp/debsuryorg-archive-keyring.deb +$STD sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' +$STD apt-get update +msg_ok "Added PHP8.3 Repository" + +msg_info "Installing PHP" +$STD apt-get remove -y php8.2* +$STD apt-get install -y \ + php8.3 \ + php8.3-{ffi,opcache,redis,zip,pdo-sqlite,bcmath,pdo,curl,dom,fpm} +msg_info "Installed PHP" + msg_info "Installing MeiliSearch" cd /opt RELEASE_MEILISEARCH=$(curl -s https://api.github.com/repos/meilisearch/meilisearch/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') diff --git a/install/openziti-controller-install.sh b/install/openziti-controller-install.sh new file mode 100644 index 0000000..2df0d31 --- /dev/null +++ b/install/openziti-controller-install.sh @@ -0,0 +1,60 @@ +#!/usr/bin/env bash + +# Copyright (c) 2021-2025 community-scripts ORG +# Author: emoscardini +# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE +# Source: https://github.com/openziti/ziti + +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 gpg +msg_ok "Installed Dependencies" + +msg_info "Installing openziti" +mkdir -p --mode=0755 /usr/share/keyrings +curl -sSLf https://get.openziti.io/tun/package-repos.gpg | gpg --dearmor -o /usr/share/keyrings/openziti.gpg +echo "deb [signed-by=/usr/share/keyrings/openziti.gpg] https://packages.openziti.org/zitipax-openziti-deb-stable debian main" >/etc/apt/sources.list.d/openziti.list +$STD apt-get update +$STD apt-get install -y openziti-controller openziti-console +msg_ok "Installed openziti" + +read -r -p "Would you like to go through the auto configuration now? " prompt +if [[ ${prompt,,} =~ ^(y|yes)$ ]]; then + IPADDRESS=$(hostname -I | awk '{print $1}') + GEN_FQDN="controller.${IPADDRESS}.sslip.io" + read -r -p "Please enter the controller FQDN [${GEN_FQDN}]: " ZITI_CTRL_ADVERTISED_ADDRESS + ZITI_CTRL_ADVERTISED_ADDRESS=${ZITI_CTRL_ADVERTISED_ADDRESS:-$GEN_FQDN} + read -r -p "Please enter the controller port [1280]: " ZITI_CTRL_ADVERTISED_PORT + ZITI_CTRL_ADVERTISED_PORT=${ZITI_CTRL_ADVERTISED_PORT:-1280} + read -r -p "Please enter the controller admin user [admin]: " ZITI_USER + ZITI_USER=${ZITI_USER:-admin} + GEN_PWD=$(head -c128 /dev/urandom | LC_ALL=C tr -dc 'A-Za-z0-9!@#$%^*_+~' | cut -c 1-12) + read -r -p "Please enter the controller admin password [${GEN_PWD}]:" ZITI_PWD + ZITI_PWD=${ZITI_PWD:-$GEN_PWD} + CONFIG_FILE="/opt/openziti/etc/controller/bootstrap.env" + sed -i "s|^ZITI_CTRL_ADVERTISED_ADDRESS=.*|ZITI_CTRL_ADVERTISED_ADDRESS='${ZITI_CTRL_ADVERTISED_ADDRESS}'|" "$CONFIG_FILE" + sed -i "s|^ZITI_CTRL_ADVERTISED_PORT=.*|ZITI_CTRL_ADVERTISED_PORT='${ZITI_CTRL_ADVERTISED_PORT}'|" "$CONFIG_FILE" + sed -i "s|^ZITI_USER=.*|ZITI_USER='${ZITI_USER}'|" "$CONFIG_FILE" + sed -i "s|^ZITI_PWD=.*|ZITI_PWD='${ZITI_PWD}'|" "$CONFIG_FILE" + env VERBOSE=0 bash /opt/openziti/etc/controller/bootstrap.bash + msg_ok "Configuration Completed" + systemctl enable -q --now ziti-controller +else + systemctl enable -q ziti-controller + msg_error "Configration not provided; Please run /opt/openziti/etc/controller/bootstrap.bash to configure the controller and restart the container" +fi + +motd_ssh +customize + +msg_info "Cleaning up" +$STD apt-get -y autoremove +$STD apt-get -y autoclean +msg_ok "Cleaned"