mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-12-15 19:53:31 +01:00
Compare commits
45 Commits
2025-11-25
...
2025-11-30
| Author | SHA1 | Date | |
|---|---|---|---|
| d0f82d7c23 | |||
| 1ec9a00abf | |||
| 8ab9666368 | |||
| fc559e0e09 | |||
| 380bf26d38 | |||
| c1f7d3d8d7 | |||
| 33489e607b | |||
| 877a25c0cc | |||
| 8c0abc9ffb | |||
| a43e287db2 | |||
| 1cd394a754 | |||
| 04bd9af89c | |||
| 4d8fa37ba0 | |||
| b4fe802d49 | |||
| 9b6c816c6f | |||
| 769e541938 | |||
| af9491d70d | |||
| 38dd38a9e2 | |||
| 5465a5dc58 | |||
| 5c6e73d4b6 | |||
| f3c2ca6f8a | |||
| 64df48c9b5 | |||
| 9f20c898fb | |||
| efdb44bc2e | |||
| 8caec1d13e | |||
| 39388a1b77 | |||
| 91b80caaa5 | |||
| dc3736146a | |||
| 40edc3e908 | |||
| 92bc24d1e5 | |||
| bdef4cbfef | |||
| 7d47eb81e9 | |||
| 276ce230f3 | |||
| 5f911164e3 | |||
| 8c6843f180 | |||
| 5004477246 | |||
| 8e15e0a524 | |||
| 54b634cea4 | |||
| d4e1b8f354 | |||
| 1a4f9ff815 | |||
| ee3d4874d1 | |||
| 01442d08ec | |||
| e1bf05ad69 | |||
| 7d435a1a5e | |||
| 7184755a0f |
72
CHANGELOG.md
72
CHANGELOG.md
@ -10,8 +10,80 @@
|
||||
> [!CAUTION]
|
||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||
|
||||
## 2025-12-01
|
||||
|
||||
## 2025-11-30
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- fix(recyclarr): remove update script systemctl commands [@vidonnus](https://github.com/vidonnus) ([#9522](https://github.com/community-scripts/ProxmoxVE/pull/9522))
|
||||
|
||||
- #### 🔧 Refactor
|
||||
|
||||
- Refactor: Actual Budget [@tremor021](https://github.com/tremor021) ([#9518](https://github.com/community-scripts/ProxmoxVE/pull/9518))
|
||||
|
||||
## 2025-11-29
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Valkey ([#9510](https://github.com/community-scripts/ProxmoxVE/pull/9510))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Fix duplicate ORIGIN in .env for OpenArchiver install script [@Copilot](https://github.com/Copilot) ([#9503](https://github.com/community-scripts/ProxmoxVE/pull/9503))
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- Remove: Documenso [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#9507](https://github.com/community-scripts/ProxmoxVE/pull/9507))
|
||||
|
||||
### 🌐 Website
|
||||
|
||||
- Update Discord link on website [@tremor021](https://github.com/tremor021) ([#9499](https://github.com/community-scripts/ProxmoxVE/pull/9499))
|
||||
|
||||
## 2025-11-28
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Apache-guacamole: fixed to early rm [@mtorazzi](https://github.com/mtorazzi) ([#9492](https://github.com/community-scripts/ProxmoxVE/pull/9492))
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- Remove: Habitica [@MickLesk](https://github.com/MickLesk) ([#9489](https://github.com/community-scripts/ProxmoxVE/pull/9489))
|
||||
|
||||
## 2025-11-27
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Qdrant ([#9465](https://github.com/community-scripts/ProxmoxVE/pull/9465))
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- #### 💥 Breaking Changes
|
||||
|
||||
- Upgrade pve-scripts-local to node 24 [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#9457](https://github.com/community-scripts/ProxmoxVE/pull/9457))
|
||||
|
||||
### 🌐 Website
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- PBS: fix typo [@joshuaharmsen845](https://github.com/joshuaharmsen845) ([#9482](https://github.com/community-scripts/ProxmoxVE/pull/9482))
|
||||
|
||||
## 2025-11-26
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
- Joplin Server: Increase RAM for LXC [@tremor021](https://github.com/tremor021) ([#9460](https://github.com/community-scripts/ProxmoxVE/pull/9460))
|
||||
|
||||
- #### 🐞 Bug Fixes
|
||||
|
||||
- Fix Open WebUI update logic (swap upgrade/install) [@camcop](https://github.com/camcop) ([#9461](https://github.com/community-scripts/ProxmoxVE/pull/9461))
|
||||
|
||||
## 2025-11-25
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
@ -24,33 +24,32 @@ function update_script() {
|
||||
check_container_storage
|
||||
check_container_resources
|
||||
|
||||
if [[ ! -f /opt/actualbudget_version.txt ]]; then
|
||||
if [[ ! -f ~/.actualbudget && ! -f /opt/actualbudget_version.txt ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
RELEASE=$(get_latest_github_release "actualbudget/actual")
|
||||
if [[ -f /opt/actualbudget-data/config.json ]]; then
|
||||
if [[ ! -f /opt/actualbudget_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/actualbudget_version.txt)" ]]; then
|
||||
if check_for_gh_release "actualbudget" "actualbudget/actual"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop actualbudget
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
msg_info "Updating Actual Budget to ${RELEASE}"
|
||||
$STD npm update -g @actual-app/sync-server
|
||||
echo "${RELEASE}" >/opt/actualbudget_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
echo "${RELEASE}" >~/.actualbudget
|
||||
msg_ok "Updated Actual Budget to ${RELEASE}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start actualbudget
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_info "${APP} is already up to date"
|
||||
fi
|
||||
else
|
||||
msg_info "Old Installation Found, you need to migrate your data and recreate to a new container"
|
||||
msg_info "Please follow the instructions on the ${APP} website to migrate your data"
|
||||
msg_info "Please follow the instructions on the Actual Budget website to migrate your data"
|
||||
msg_info "https://actualbudget.org/docs/backup-restore/backup"
|
||||
exit
|
||||
fi
|
||||
|
||||
@ -1,80 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: MickLesk (CanbiZ)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/documenso/documenso
|
||||
|
||||
APP="Documenso"
|
||||
var_tags="${var_tags:-document}"
|
||||
var_disk="${var_disk:-12}"
|
||||
var_cpu="${var_cpu:-6}"
|
||||
var_ram="${var_ram:-6144}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
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 /opt/documenso ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/documenso/documenso/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop documenso
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cp /opt/documenso/.env /opt/
|
||||
rm -rf /opt/documenso
|
||||
cd /opt
|
||||
curl -fsSL "https://github.com/documenso/documenso/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip
|
||||
$STD unzip v${RELEASE}.zip
|
||||
mv documenso-${RELEASE} /opt/documenso
|
||||
cd /opt/documenso
|
||||
mv /opt/.env /opt/documenso/.env
|
||||
export TURBO_CACHE=1
|
||||
export NEXT_TELEMETRY_DISABLED=1
|
||||
export CYPRESS_INSTALL_BINARY=0
|
||||
export NODE_OPTIONS="--max-old-space-size=4096"
|
||||
$STD turbo prune --scope=@documenso/remix --docker
|
||||
cd out
|
||||
$STD cp ../lingui.config.ts .
|
||||
$STD cp ../turbo.json .
|
||||
$STD cp -r json/* .
|
||||
$STD npm install --legacy-peer-deps
|
||||
$STD cp -r full/* .
|
||||
$STD turbo run build --filter=@documenso/remix
|
||||
$STD npm run prisma:migrate-deploy
|
||||
$STD turbo daemon stop
|
||||
rm -rf /opt/v${RELEASE}.zip
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start documenso
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
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}:3000${CL}"
|
||||
@ -1,82 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: Slaviša Arežina (tremor021)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/HabitRPG/habitica
|
||||
|
||||
APP="Habitica"
|
||||
var_tags="${var_tags:-gaming}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_disk="${var_disk:-8}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-12}"
|
||||
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 "/opt/habitica" ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
NODE_VERSION="20" NODE_MODULE="gulp-cli,mocha" setup_nodejs
|
||||
if check_for_gh_release "habitica" "HabitRPG/habitica"; then
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop habitica-mongodb
|
||||
systemctl stop habitica
|
||||
systemctl stop habitica-client
|
||||
msg_info "Stopped Service"
|
||||
|
||||
msg_info "Save configuration"
|
||||
if [[ -f /opt/habitica/config.json ]]; then
|
||||
cp /opt/habitica/config.json ~/config.json
|
||||
msg_ok "Saved configuration"
|
||||
else
|
||||
msg_warn "No configuration file found, skipping save"
|
||||
fi
|
||||
|
||||
fetch_and_deploy_gh_release "habitica" "HabitRPG/habitica" "tarball" "latest" "/opt/habitica"
|
||||
|
||||
msg_info "Updating $APP"
|
||||
cd /opt/habitica
|
||||
$STD npm i
|
||||
$STD npm run postinstall
|
||||
$STD npm run client:build
|
||||
$STD gulp build:prod
|
||||
msg_ok "Updated $APP"
|
||||
|
||||
msg_info "Restoring configuration"
|
||||
if [[ -f ~/config.json ]]; then
|
||||
cp ~/config.json /opt/habitica/config.json
|
||||
msg_ok "Restored configuration"
|
||||
else
|
||||
msg_warn "No configuration file found to restore"
|
||||
fi
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start habitica-mongodb
|
||||
systemctl start habitica
|
||||
systemctl start habitica-client
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
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}:3000${CL}"
|
||||
@ -1,6 +0,0 @@
|
||||
____
|
||||
/ __ \____ _______ ______ ___ ___ ____ _________
|
||||
/ / / / __ \/ ___/ / / / __ `__ \/ _ \/ __ \/ ___/ __ \
|
||||
/ /_/ / /_/ / /__/ /_/ / / / / / / __/ / / (__ ) /_/ /
|
||||
/_____/\____/\___/\__,_/_/ /_/ /_/\___/_/ /_/____/\____/
|
||||
|
||||
@ -1,6 +0,0 @@
|
||||
__ __ __ _ __ _
|
||||
/ / / /___ _/ /_ (_) /_(_)________ _
|
||||
/ /_/ / __ `/ __ \/ / __/ / ___/ __ `/
|
||||
/ __ / /_/ / /_/ / / /_/ / /__/ /_/ /
|
||||
/_/ /_/\__,_/_.___/_/\__/_/\___/\__,_/
|
||||
|
||||
6
ct/headers/qdrant
Normal file
6
ct/headers/qdrant
Normal file
@ -0,0 +1,6 @@
|
||||
____ __ __
|
||||
/ __ \____/ /________ _____ / /_
|
||||
/ / / / __ / ___/ __ `/ __ \/ __/
|
||||
/ /_/ / /_/ / / / /_/ / / / / /_
|
||||
\___\_\__,_/_/ \__,_/_/ /_/\__/
|
||||
|
||||
6
ct/headers/valkey
Normal file
6
ct/headers/valkey
Normal file
@ -0,0 +1,6 @@
|
||||
_ __ ____
|
||||
| | / /___ _/ / /_____ __ __
|
||||
| | / / __ `/ / //_/ _ \/ / / /
|
||||
| |/ / /_/ / / ,< / __/ /_/ /
|
||||
|___/\__,_/_/_/|_|\___/\__, /
|
||||
/____/
|
||||
@ -8,7 +8,7 @@ source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxV
|
||||
APP="Joplin-Server"
|
||||
var_tags="${var_tags:-notes}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-4096}"
|
||||
var_ram="${var_ram:-6144}"
|
||||
var_disk="${var_disk:-20}"
|
||||
var_os="${var_os:-debian}"
|
||||
var_version="${var_version:-13}"
|
||||
|
||||
@ -30,7 +30,7 @@ function update_script() {
|
||||
|
||||
msg_info "Updating MongoDB"
|
||||
if lscpu | grep -q 'avx'; then
|
||||
MONGO_VERSION="8.0" setup_mongodb
|
||||
MONGO_VERSION="8.0"
|
||||
else
|
||||
msg_error "No AVX detected (CPU-Flag)! We have discontinued support for this. You are welcome to try it manually with a Debian LXC, but due to the many issues with Omada, we currently only support AVX CPUs."
|
||||
exit 10
|
||||
|
||||
@ -42,7 +42,7 @@ function update_script() {
|
||||
|
||||
msg_info "Installing uv-based Open-WebUI"
|
||||
PYTHON_VERSION="3.12" setup_uv
|
||||
$STD uv tool upgrade --python 3.12 open-webui[all]
|
||||
$STD uv tool install --python 3.12 open-webui[all]
|
||||
msg_ok "Installed uv-based Open-WebUI"
|
||||
|
||||
msg_info "Restoring data"
|
||||
@ -108,7 +108,7 @@ EOF
|
||||
|
||||
msg_info "Updating Open WebUI via uv"
|
||||
PYTHON_VERSION="3.12" setup_uv
|
||||
$STD uv tool install --python 3.12 open-webui[all]
|
||||
$STD uv tool upgrade --python 3.12 open-webui[all]
|
||||
systemctl restart open-webui
|
||||
msg_ok "Updated Open WebUI"
|
||||
msg_ok "Updated successfully!"
|
||||
|
||||
@ -27,42 +27,9 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "ProxmoxVE-Local" "community-scripts/ProxmoxVE-Local"; then
|
||||
msg_info "Stopping Services"
|
||||
systemctl stop pvescriptslocal
|
||||
msg_ok "Stopped Services"
|
||||
|
||||
msg_info "Backup Data"
|
||||
cp /opt/ProxmoxVE-Local/.env /opt/.env.bak
|
||||
cp -r /opt/ProxmoxVE-Local/data /opt/data.bak
|
||||
msg_ok "Backed up Data"
|
||||
|
||||
CLEAN_INSTALL=1 fetch_and_deploy_gh_release "ProxmoxVE-Local" "community-scripts/ProxmoxVE-Local"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
if [[ -f /opt/.env.bak ]]; then
|
||||
mv /opt/.env.bak /opt/ProxmoxVE-Local/.env
|
||||
fi
|
||||
if [[ -d /opt/data.bak ]]; then
|
||||
rm -rf /opt/ProxmoxVE-Local/data
|
||||
mv /opt/data.bak /opt/ProxmoxVE-Local/data
|
||||
fi
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Updating PVE Scripts local"
|
||||
cd /opt/ProxmoxVE-Local
|
||||
chmod 755 data
|
||||
$STD npm install
|
||||
$STD npm run build
|
||||
msg_ok "Updated PVE Scripts local"
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start pvescriptslocal
|
||||
msg_ok "Started Services"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
msg_custom "🚀" "${GN}" "The app offers a built-in updater. Please use it."
|
||||
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
45
ct/qdrant.sh
Normal file
45
ct/qdrant.sh
Normal file
@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: MickLesk (CanbiZ)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/qdrant/qdrant
|
||||
|
||||
APP="Qdrant"
|
||||
var_tags="${var_tags:-database;vector}"
|
||||
var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-5}"
|
||||
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 /var/lib/qdrant ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
if check_for_gh_release "qdrant" "qdrant/qdrant"; then
|
||||
fetch_and_deploy_gh_release "qdrant" "qdrant/qdrant" "binary" "latest" "/usr/bin/qdrant"
|
||||
chown -R root:root /var/lib/qdrant
|
||||
chmod -R 755 /var/lib/qdrant
|
||||
fi
|
||||
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}:6333/dashboard${CL}"
|
||||
@ -29,15 +29,10 @@ function update_script() {
|
||||
fi
|
||||
if check_for_gh_release "recyclarr" "recyclarr/recyclarr"; then
|
||||
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop recyclarr
|
||||
msg_ok "Stopped Service"
|
||||
msg_info "Updating ${APP}"
|
||||
|
||||
fetch_and_deploy_gh_release "recyclarr" "recyclarr/recyclarr" "prebuild" "latest" "/usr/local/bin" "recyclarr-linux-x64.tar.xz"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start recyclarr
|
||||
msg_ok "Started Service"
|
||||
msg_ok "Updated successfully!"
|
||||
fi
|
||||
exit
|
||||
|
||||
45
ct/valkey.sh
Normal file
45
ct/valkey.sh
Normal file
@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: pshankinclarke (lazarillo)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://valkey.io/
|
||||
|
||||
APP="Valkey"
|
||||
var_tags="${var_tags:-database}"
|
||||
var_cpu="${var_cpu:-1}"
|
||||
var_ram="${var_ram:-1024}"
|
||||
var_disk="${var_disk:-4}"
|
||||
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/valkey-server.service ]]; then
|
||||
msg_error "No Valkey Installation Found!"
|
||||
exit
|
||||
fi
|
||||
msg_info "Updating Valkey LXC"
|
||||
$STD apt update
|
||||
$STD apt -y upgrade
|
||||
msg_ok "Updated Valkey LXC"
|
||||
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}:6379${CL}"
|
||||
@ -267,13 +267,13 @@ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file
|
||||
|
||||
- **[Proxmox VE Documentation](https://pve.proxmox.com/pve-docs/)**
|
||||
- **[Community Scripts Repository](https://github.com/community-scripts/ProxmoxVE)**
|
||||
- **[Discord Community](https://discord.gg/2wvnMDgdnU)**
|
||||
- **[Discord Community](https://discord.gg/3AnUqsXnmK)**
|
||||
- **[GitHub Discussions](https://github.com/community-scripts/ProxmoxVE/discussions)**
|
||||
|
||||
## 🔗 Links
|
||||
|
||||
- **🌐 Live Website**: [https://community-scripts.github.io/ProxmoxVE/](https://community-scripts.github.io/ProxmoxVE/)
|
||||
- **💬 Discord Server**: [https://discord.gg/2wvnMDgdnU](https://discord.gg/2wvnMDgdnU)
|
||||
- **💬 Discord Server**: [https://discord.gg/3AnUqsXnmK](https://discord.gg/3AnUqsXnmK)
|
||||
- **📝 Change Log**: [https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md](https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md)
|
||||
|
||||
---
|
||||
|
||||
@ -1,35 +0,0 @@
|
||||
{
|
||||
"name": "Documenso",
|
||||
"slug": "documenso",
|
||||
"categories": [
|
||||
12
|
||||
],
|
||||
"date_created": "2025-05-14",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 3000,
|
||||
"documentation": "https://documenso.com/",
|
||||
"website": "https://documenso.com/",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/documenso.webp",
|
||||
"config_path": "/opt/documenso/.env",
|
||||
"description": "Signing documents digitally should be fast and easy and should be the best practice for every document signed worldwide. This is technically quite easy today, but it also introduces a new party to every signature: The signing tool providers. While this is not a problem in itself, it should make us think about how we want these providers of trust to work. Documenso aims to be the world's most trusted document-signing tool. This trust is built by empowering you to self-host Documenso and review how it works under the hood.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/documenso.sh",
|
||||
"resources": {
|
||||
"cpu": 4,
|
||||
"ram": 6144,
|
||||
"hdd": 10,
|
||||
"os": "Debian",
|
||||
"version": "12"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": "helper-scripts@local.com",
|
||||
"password": "helper-scripts"
|
||||
},
|
||||
"notes": []
|
||||
}
|
||||
@ -1,40 +0,0 @@
|
||||
{
|
||||
"name": "Habitica",
|
||||
"slug": "habitica",
|
||||
"categories": [
|
||||
24
|
||||
],
|
||||
"date_created": "2025-03-03",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 3000,
|
||||
"documentation": "https://github.com/HabitRPG/habitica/wiki",
|
||||
"website": "https://habitica.com/",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/habitica.webp",
|
||||
"config_path": "/opt/habitica/config.json",
|
||||
"description": "Habitica is an open-source habit-building program that treats your life like a role-playing game. Level up as you succeed, lose HP as you fail, and earn Gold to buy weapons and armor!",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/habitica.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 4096,
|
||||
"hdd": 8,
|
||||
"os": "debian",
|
||||
"version": "12"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": [
|
||||
{
|
||||
"text": "It takes a minute or two after installation for web UI to start, please be patient.",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
||||
@ -20,7 +20,7 @@
|
||||
"script": "ct/joplin-server.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 4096,
|
||||
"ram": 6144,
|
||||
"hdd": 20,
|
||||
"os": "Debian",
|
||||
"version": "13"
|
||||
@ -35,6 +35,10 @@
|
||||
{
|
||||
"text": "Application can take some time to build, depending on your host speed. Please be patient.",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "Default RAM size for LXC is set to 6GB because of Node.js building process. You can lower it after application installs",
|
||||
"type": "info"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@ -37,7 +37,7 @@
|
||||
"type": "warning"
|
||||
},
|
||||
{
|
||||
"text": "Advanced Install is only possible with disabled IPV6! Otherwise the installation sometimes stuck.",
|
||||
"text": "Advanced Install is only possible with IPv6 disabled! Otherwise, the installation may get stuck.",
|
||||
"type": "warning"
|
||||
}
|
||||
]
|
||||
|
||||
35
frontend/public/json/qdrant.json
Normal file
35
frontend/public/json/qdrant.json
Normal file
@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "Qdrant",
|
||||
"slug": "qdrant",
|
||||
"categories": [
|
||||
8
|
||||
],
|
||||
"date_created": "2025-11-27",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"config_path": "/etc/qdrant/config.yaml",
|
||||
"interface_port": 6333,
|
||||
"documentation": "https://github.com/qdrant/qdrant",
|
||||
"website": "https://qdrant.tech/",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/qdrant.webp",
|
||||
"description": "Qdrant is a vector search engine and vector database that allows you to store, search, and manage high-dimensional vectors efficiently.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/qdrant.sh",
|
||||
"resources": {
|
||||
"cpu": 1,
|
||||
"ram": 1024,
|
||||
"hdd": 5,
|
||||
"os": "debian",
|
||||
"version": "13"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": []
|
||||
}
|
||||
35
frontend/public/json/valkey.json
Normal file
35
frontend/public/json/valkey.json
Normal file
@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "Valkey",
|
||||
"slug": "valkey",
|
||||
"categories": [
|
||||
9
|
||||
],
|
||||
"date_created": "2025-11-29",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 6379,
|
||||
"documentation": "https://valkey.io/docs/",
|
||||
"config_path": "/etc/valkey/valkey.conf",
|
||||
"website": "https://valkey.io/",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/webp/valkey.webp",
|
||||
"description": "Valkey is an open source (BSD) high-performance key/value datastore that supports a variety of workloads such as caching, message queues, and can act as a primary database. The project is backed by the Linux Foundation, ensuring it will remain open source forever.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/valkey.sh",
|
||||
"resources": {
|
||||
"cpu": 1,
|
||||
"ram": 1024,
|
||||
"hdd": 4,
|
||||
"os": "Debian",
|
||||
"version": "13"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": null,
|
||||
"password": null
|
||||
},
|
||||
"notes": []
|
||||
}
|
||||
@ -1,8 +1,343 @@
|
||||
[
|
||||
{
|
||||
"name": "recyclarr/recyclarr",
|
||||
"version": "v7.5.2",
|
||||
"date": "2025-11-30T22:08:46Z"
|
||||
},
|
||||
{
|
||||
"name": "rcourtman/Pulse",
|
||||
"version": "v4.35.0",
|
||||
"date": "2025-11-30T21:10:17Z"
|
||||
},
|
||||
{
|
||||
"name": "Cleanuparr/Cleanuparr",
|
||||
"version": "v2.4.7",
|
||||
"date": "2025-11-30T20:59:51Z"
|
||||
},
|
||||
{
|
||||
"name": "laurent22/joplin",
|
||||
"version": "server-v3.4.4",
|
||||
"date": "2025-09-25T13:19:26Z"
|
||||
},
|
||||
{
|
||||
"name": "juanfont/headscale",
|
||||
"version": "v0.27.1",
|
||||
"date": "2025-11-11T19:32:29Z"
|
||||
},
|
||||
{
|
||||
"name": "hargata/lubelog",
|
||||
"version": "v1.5.5",
|
||||
"date": "2025-11-30T18:33:20Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v1.16.0",
|
||||
"date": "2025-11-30T17:44:44Z"
|
||||
},
|
||||
{
|
||||
"name": "sabre-io/Baikal",
|
||||
"version": "0.11.1",
|
||||
"date": "2025-11-30T14:54:03Z"
|
||||
},
|
||||
{
|
||||
"name": "openhab/openhab-core",
|
||||
"version": "5.1.0.M3",
|
||||
"date": "2025-11-30T14:36:37Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisbenincasa/tunarr",
|
||||
"version": "v0.23.0-alpha.27",
|
||||
"date": "2025-11-30T14:09:31Z"
|
||||
},
|
||||
{
|
||||
"name": "gtsteffaniak/filebrowser",
|
||||
"version": "v1.1.2-experimental-sqlite-indexing-v2",
|
||||
"date": "2025-11-30T14:08:49Z"
|
||||
},
|
||||
{
|
||||
"name": "msgbyte/tianji",
|
||||
"version": "v1.30.17",
|
||||
"date": "2025-11-30T12:10:45Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-core@16.2.1",
|
||||
"date": "2025-11-30T11:36:45Z"
|
||||
},
|
||||
{
|
||||
"name": "healthchecks/healthchecks",
|
||||
"version": "v3.13",
|
||||
"date": "2025-11-30T08:52:20Z"
|
||||
},
|
||||
{
|
||||
"name": "zwave-js/zwave-js-ui",
|
||||
"version": "v11.8.2",
|
||||
"date": "2025-11-30T08:39:28Z"
|
||||
},
|
||||
{
|
||||
"name": "openobserve/openobserve",
|
||||
"version": "v0.20.0",
|
||||
"date": "2025-11-30T08:08:00Z"
|
||||
},
|
||||
{
|
||||
"name": "pommee/goaway",
|
||||
"version": "v0.62.20",
|
||||
"date": "2025-11-30T06:51:31Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.24.383",
|
||||
"date": "2025-11-30T06:09:58Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-09-20T12:12:33Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v4.1.0",
|
||||
"date": "2025-11-23T12:13:34Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.5",
|
||||
"date": "2025-11-30T00:27:04Z"
|
||||
},
|
||||
{
|
||||
"name": "MediaBrowser/Emby.Releases",
|
||||
"version": "4.9.1.90",
|
||||
"date": "2025-11-11T01:00:32Z"
|
||||
},
|
||||
{
|
||||
"name": "Stirling-Tools/Stirling-PDF",
|
||||
"version": "v2.0.0",
|
||||
"date": "2025-11-25T23:19:38Z"
|
||||
"version": "v2.0.2",
|
||||
"date": "2025-11-29T19:49:03Z"
|
||||
},
|
||||
{
|
||||
"name": "karakeep-app/karakeep",
|
||||
"version": "sdk/v0.29.0",
|
||||
"date": "2025-11-29T18:53:44Z"
|
||||
},
|
||||
{
|
||||
"name": "ErsatzTV/ErsatzTV",
|
||||
"version": "v25.9.0",
|
||||
"date": "2025-11-29T16:37:28Z"
|
||||
},
|
||||
{
|
||||
"name": "autobrr/autobrr",
|
||||
"version": "v1.70.0",
|
||||
"date": "2025-11-29T14:44:38Z"
|
||||
},
|
||||
{
|
||||
"name": "Kozea/Radicale",
|
||||
"version": "v3.5.9",
|
||||
"date": "2025-11-29T14:35:45Z"
|
||||
},
|
||||
{
|
||||
"name": "authelia/authelia",
|
||||
"version": "v4.39.15",
|
||||
"date": "2025-11-29T12:13:04Z"
|
||||
},
|
||||
{
|
||||
"name": "alexta69/metube",
|
||||
"version": "2025.11.29",
|
||||
"date": "2025-11-29T07:59:21Z"
|
||||
},
|
||||
{
|
||||
"name": "firefly-iii/firefly-iii",
|
||||
"version": "v6.4.9",
|
||||
"date": "2025-11-28T20:36:20Z"
|
||||
},
|
||||
{
|
||||
"name": "FlareSolverr/FlareSolverr",
|
||||
"version": "v3.4.6",
|
||||
"date": "2025-11-29T02:43:00Z"
|
||||
},
|
||||
{
|
||||
"name": "homarr-labs/homarr",
|
||||
"version": "v1.45.0",
|
||||
"date": "2025-11-28T19:15:52Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.2.11",
|
||||
"date": "2025-11-25T18:04:45Z"
|
||||
},
|
||||
{
|
||||
"name": "n8n-io/n8n",
|
||||
"version": "n8n@1.121.3",
|
||||
"date": "2025-11-26T14:58:48Z"
|
||||
},
|
||||
{
|
||||
"name": "Paymenter/Paymenter",
|
||||
"version": "v1.4.6",
|
||||
"date": "2025-11-28T15:12:24Z"
|
||||
},
|
||||
{
|
||||
"name": "dgtlmoon/changedetection.io",
|
||||
"version": "0.51.4",
|
||||
"date": "2025-11-28T12:26:59Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisvel/tududi",
|
||||
"version": "v0.86.1",
|
||||
"date": "2025-11-14T05:05:44Z"
|
||||
},
|
||||
{
|
||||
"name": "gotson/komga",
|
||||
"version": "1.23.6",
|
||||
"date": "2025-11-28T03:52:50Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.80.7-nightly",
|
||||
"date": "2025-11-27T23:19:40Z"
|
||||
},
|
||||
{
|
||||
"name": "esphome/esphome",
|
||||
"version": "2025.11.2",
|
||||
"date": "2025-11-27T23:19:08Z"
|
||||
},
|
||||
{
|
||||
"name": "go-vikunja/vikunja",
|
||||
"version": "v1.0.0-rc0",
|
||||
"date": "2025-08-17T18:47:15Z"
|
||||
},
|
||||
{
|
||||
"name": "phpipam/phpipam",
|
||||
"version": "v1.7.4",
|
||||
"date": "2025-11-27T18:53:28Z"
|
||||
},
|
||||
{
|
||||
"name": "verdaccio/verdaccio",
|
||||
"version": "v6.2.3",
|
||||
"date": "2025-11-27T18:25:56Z"
|
||||
},
|
||||
{
|
||||
"name": "pi-hole/pi-hole",
|
||||
"version": "v6.3",
|
||||
"date": "2025-11-27T18:12:22Z"
|
||||
},
|
||||
{
|
||||
"name": "Brandawg93/PeaNUT",
|
||||
"version": "v5.18.0",
|
||||
"date": "2025-11-27T18:04:51Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.11.3",
|
||||
"date": "2025-11-21T17:03:22Z"
|
||||
},
|
||||
{
|
||||
"name": "cockpit-project/cockpit",
|
||||
"version": "352",
|
||||
"date": "2025-11-27T15:38:26Z"
|
||||
},
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v13.1.2",
|
||||
"date": "2025-11-27T12:48:22Z"
|
||||
},
|
||||
{
|
||||
"name": "crowdsecurity/crowdsec",
|
||||
"version": "v1.7.3",
|
||||
"date": "2025-10-24T10:51:12Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.210.2",
|
||||
"date": "2025-11-27T09:18:22Z"
|
||||
},
|
||||
{
|
||||
"name": "ipfs/kubo",
|
||||
"version": "v0.39.0",
|
||||
"date": "2025-11-27T03:47:38Z"
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.13.0",
|
||||
"date": "2025-11-19T14:16:07Z"
|
||||
},
|
||||
{
|
||||
"name": "OliveTin/OliveTin",
|
||||
"version": "3000.5.0",
|
||||
"date": "2025-11-27T01:21:41Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
"version": "debian/12.1.36",
|
||||
"date": "2025-11-27T00:33:48Z"
|
||||
},
|
||||
{
|
||||
"name": "jenkinsci/jenkins",
|
||||
"version": "jenkins-2.539",
|
||||
"date": "2025-11-25T16:05:32Z"
|
||||
},
|
||||
{
|
||||
"name": "gristlabs/grist-core",
|
||||
"version": "v1.7.8",
|
||||
"date": "2025-11-26T22:35:03Z"
|
||||
},
|
||||
{
|
||||
"name": "tailscale/tailscale",
|
||||
"version": "v1.93.0-pre",
|
||||
"date": "2025-11-26T20:50:59Z"
|
||||
},
|
||||
{
|
||||
"name": "jhuckaby/Cronicle",
|
||||
"version": "v0.9.101",
|
||||
"date": "2025-11-26T17:14:35Z"
|
||||
},
|
||||
{
|
||||
"name": "NodeBB/NodeBB",
|
||||
"version": "v4.7.0",
|
||||
"date": "2025-11-26T16:59:45Z"
|
||||
},
|
||||
{
|
||||
"name": "readeck/readeck",
|
||||
"version": "0.21.3",
|
||||
"date": "2025-11-26T16:08:17Z"
|
||||
},
|
||||
{
|
||||
"name": "duplicati/duplicati",
|
||||
"version": "v2.2.0.2-2.2.0.2_beta_2025-11-26",
|
||||
"date": "2025-11-26T14:20:54Z"
|
||||
},
|
||||
{
|
||||
"name": "inventree/InvenTree",
|
||||
"version": "1.1.6",
|
||||
"date": "2025-11-26T11:42:59Z"
|
||||
},
|
||||
{
|
||||
"name": "tobychui/zoraxy",
|
||||
"version": "v3.3.0-rc2",
|
||||
"date": "2025-11-26T11:42:11Z"
|
||||
},
|
||||
{
|
||||
"name": "Luligu/matterbridge",
|
||||
"version": "3.4.0",
|
||||
"date": "2025-11-26T11:41:16Z"
|
||||
},
|
||||
{
|
||||
"name": "NLnetLabs/unbound",
|
||||
"version": "release-1.24.2",
|
||||
"date": "2025-11-26T11:22:30Z"
|
||||
},
|
||||
{
|
||||
"name": "wazuh/wazuh",
|
||||
"version": "coverity-w48-4.14.2",
|
||||
"date": "2025-11-26T07:57:00Z"
|
||||
},
|
||||
{
|
||||
"name": "SigNoz/signoz",
|
||||
"version": "v0.103.0",
|
||||
"date": "2025-11-26T06:51:12Z"
|
||||
},
|
||||
{
|
||||
"name": "HabitRPG/habitica",
|
||||
"version": "v5.42.0",
|
||||
"date": "2025-11-26T02:01:01Z"
|
||||
},
|
||||
{
|
||||
"name": "BookStackApp/BookStack",
|
||||
@ -14,16 +349,6 @@
|
||||
"version": "preview-test-fix-subscriptions",
|
||||
"date": "2025-11-25T22:11:46Z"
|
||||
},
|
||||
{
|
||||
"name": "gristlabs/grist-core",
|
||||
"version": "v1.7.8",
|
||||
"date": "2025-11-25T20:50:33Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.80.5.dev1",
|
||||
"date": "2025-11-25T20:23:57Z"
|
||||
},
|
||||
{
|
||||
"name": "wizarrrr/wizarr",
|
||||
"version": "v2025.11.3",
|
||||
@ -34,26 +359,11 @@
|
||||
"version": "v4.4.7",
|
||||
"date": "2025-11-25T19:58:16Z"
|
||||
},
|
||||
{
|
||||
"name": "tailscale/tailscale",
|
||||
"version": "v1.90.9",
|
||||
"date": "2025-11-25T18:21:40Z"
|
||||
},
|
||||
{
|
||||
"name": "karlomikus/bar-assistant",
|
||||
"version": "v5.9.3",
|
||||
"date": "2025-11-25T18:18:34Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.2.11",
|
||||
"date": "2025-11-25T18:04:45Z"
|
||||
},
|
||||
{
|
||||
"name": "gtsteffaniak/filebrowser",
|
||||
"version": "v1.0.2-stable",
|
||||
"date": "2025-11-25T18:00:38Z"
|
||||
},
|
||||
{
|
||||
"name": "Dolibarr/dolibarr",
|
||||
"version": "22.0.3",
|
||||
@ -64,41 +374,21 @@
|
||||
"version": "v1.143.0",
|
||||
"date": "2025-11-25T16:49:54Z"
|
||||
},
|
||||
{
|
||||
"name": "jenkinsci/jenkins",
|
||||
"version": "jenkins-2.539",
|
||||
"date": "2025-11-25T16:05:32Z"
|
||||
},
|
||||
{
|
||||
"name": "usememos/memos",
|
||||
"version": "v0.25.3",
|
||||
"date": "2025-11-25T15:40:41Z"
|
||||
},
|
||||
{
|
||||
"name": "openobserve/openobserve",
|
||||
"version": "v0.20.0-rc1",
|
||||
"date": "2025-11-25T13:25:19Z"
|
||||
},
|
||||
{
|
||||
"name": "booklore-app/booklore",
|
||||
"version": "v1.12.0",
|
||||
"date": "2025-11-25T13:17:08Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisbenincasa/tunarr",
|
||||
"version": "v0.23.0-alpha.25",
|
||||
"date": "2025-11-25T12:18:04Z"
|
||||
},
|
||||
{
|
||||
"name": "open-webui/open-webui",
|
||||
"version": "v0.6.40",
|
||||
"date": "2025-11-25T11:01:46Z"
|
||||
},
|
||||
{
|
||||
"name": "n8n-io/n8n",
|
||||
"version": "n8n@1.122.1",
|
||||
"date": "2025-11-24T17:33:59Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
"version": "v2.1.0",
|
||||
@ -109,41 +399,11 @@
|
||||
"version": "v10.11.8",
|
||||
"date": "2025-11-21T17:06:07Z"
|
||||
},
|
||||
{
|
||||
"name": "zwave-js/zwave-js-ui",
|
||||
"version": "v11.8.1",
|
||||
"date": "2025-11-25T08:43:56Z"
|
||||
},
|
||||
{
|
||||
"name": "syncthing/syncthing",
|
||||
"version": "v2.0.11",
|
||||
"date": "2025-11-04T08:51:05Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-09-20T12:12:33Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.24.356",
|
||||
"date": "2025-11-25T05:55:49Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.4.20",
|
||||
"date": "2025-11-25T00:27:08Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v4.1.0",
|
||||
"date": "2025-11-23T12:13:34Z"
|
||||
},
|
||||
{
|
||||
"name": "esphome/esphome",
|
||||
"version": "2025.11.1",
|
||||
"date": "2025-11-24T22:29:56Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus/prometheus",
|
||||
"version": "v0.308.0-rc.1",
|
||||
@ -154,16 +414,6 @@
|
||||
"version": "2.3.6",
|
||||
"date": "2025-11-24T19:40:27Z"
|
||||
},
|
||||
{
|
||||
"name": "rcourtman/Pulse",
|
||||
"version": "v4.32.7",
|
||||
"date": "2025-11-24T18:45:58Z"
|
||||
},
|
||||
{
|
||||
"name": "msgbyte/tianji",
|
||||
"version": "v1.30.15",
|
||||
"date": "2025-11-24T16:52:52Z"
|
||||
},
|
||||
{
|
||||
"name": "bunkerity/bunkerweb",
|
||||
"version": "v1.6.6",
|
||||
@ -199,11 +449,6 @@
|
||||
"version": "2.610",
|
||||
"date": "2025-11-24T04:28:30Z"
|
||||
},
|
||||
{
|
||||
"name": "firefly-iii/firefly-iii",
|
||||
"version": "v6.4.8",
|
||||
"date": "2025-11-13T04:42:27Z"
|
||||
},
|
||||
{
|
||||
"name": "raydak-labs/configarr",
|
||||
"version": "v1.18.0",
|
||||
@ -214,31 +459,11 @@
|
||||
"version": "2.2",
|
||||
"date": "2025-11-23T17:32:38Z"
|
||||
},
|
||||
{
|
||||
"name": "verdaccio/verdaccio",
|
||||
"version": "v6.2.2",
|
||||
"date": "2025-11-23T16:54:07Z"
|
||||
},
|
||||
{
|
||||
"name": "crafty-controller/crafty-4",
|
||||
"version": "v4.6.1",
|
||||
"date": "2025-11-23T16:42:50Z"
|
||||
},
|
||||
{
|
||||
"name": "openhab/openhab-core",
|
||||
"version": "5.0.3",
|
||||
"date": "2025-11-23T14:22:13Z"
|
||||
},
|
||||
{
|
||||
"name": "readeck/readeck",
|
||||
"version": "0.21.2",
|
||||
"date": "2025-11-23T10:56:43Z"
|
||||
},
|
||||
{
|
||||
"name": "tobychui/zoraxy",
|
||||
"version": "v3.3.0-rc1",
|
||||
"date": "2025-11-23T05:42:35Z"
|
||||
},
|
||||
{
|
||||
"name": "hyperion-project/hyperion.ng",
|
||||
"version": "2.1.1",
|
||||
@ -249,16 +474,6 @@
|
||||
"version": "v2.20.0",
|
||||
"date": "2025-11-22T21:56:00Z"
|
||||
},
|
||||
{
|
||||
"name": "OliveTin/OliveTin",
|
||||
"version": "2025.11.25",
|
||||
"date": "2025-11-22T21:00:52Z"
|
||||
},
|
||||
{
|
||||
"name": "Cleanuparr/Cleanuparr",
|
||||
"version": "v2.4.6",
|
||||
"date": "2025-11-22T20:32:09Z"
|
||||
},
|
||||
{
|
||||
"name": "go-gitea/gitea",
|
||||
"version": "v1.25.2",
|
||||
@ -279,31 +494,11 @@
|
||||
"version": "v0.34.0",
|
||||
"date": "2025-11-22T09:18:14Z"
|
||||
},
|
||||
{
|
||||
"name": "laurent22/joplin",
|
||||
"version": "server-v3.4.4",
|
||||
"date": "2025-09-25T13:19:26Z"
|
||||
},
|
||||
{
|
||||
"name": "inventree/InvenTree",
|
||||
"version": "1.1.5",
|
||||
"date": "2025-11-22T07:02:52Z"
|
||||
},
|
||||
{
|
||||
"name": "theonedev/onedev",
|
||||
"version": "v13.1.0",
|
||||
"date": "2025-11-22T04:29:25Z"
|
||||
},
|
||||
{
|
||||
"name": "TwiN/gatus",
|
||||
"version": "v5.33.0",
|
||||
"date": "2025-11-21T22:54:49Z"
|
||||
},
|
||||
{
|
||||
"name": "homarr-labs/homarr",
|
||||
"version": "v1.44.0",
|
||||
"date": "2025-11-21T19:17:09Z"
|
||||
},
|
||||
{
|
||||
"name": "gelbphoenix/autocaliweb",
|
||||
"version": "v0.11.0",
|
||||
@ -314,26 +509,11 @@
|
||||
"version": "v1.72.0",
|
||||
"date": "2025-11-21T18:20:58Z"
|
||||
},
|
||||
{
|
||||
"name": "home-assistant/core",
|
||||
"version": "2025.11.3",
|
||||
"date": "2025-11-21T17:03:22Z"
|
||||
},
|
||||
{
|
||||
"name": "Bubka/2FAuth",
|
||||
"version": "v5.6.1",
|
||||
"date": "2025-11-21T16:51:21Z"
|
||||
},
|
||||
{
|
||||
"name": "pommee/goaway",
|
||||
"version": "v0.62.19",
|
||||
"date": "2025-11-21T13:24:09Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-ui@16.1.0",
|
||||
"date": "2025-11-21T13:02:57Z"
|
||||
},
|
||||
{
|
||||
"name": "forgejo/forgejo",
|
||||
"version": "v13.0.3",
|
||||
@ -369,11 +549,6 @@
|
||||
"version": "v4.3.2",
|
||||
"date": "2025-10-18T12:11:00Z"
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.13.1-rc0",
|
||||
"date": "2025-11-20T21:30:35Z"
|
||||
},
|
||||
{
|
||||
"name": "project-zot/zot",
|
||||
"version": "v2.1.11",
|
||||
@ -389,21 +564,6 @@
|
||||
"version": "5.26.17",
|
||||
"date": "2025-11-20T16:09:28Z"
|
||||
},
|
||||
{
|
||||
"name": "duplicati/duplicati",
|
||||
"version": "v2.2.0.101-2.2.0.101_canary_2025-11-20",
|
||||
"date": "2025-11-20T14:50:45Z"
|
||||
},
|
||||
{
|
||||
"name": "NodeBB/NodeBB",
|
||||
"version": "v4.6.3",
|
||||
"date": "2025-11-20T14:13:22Z"
|
||||
},
|
||||
{
|
||||
"name": "SigNoz/signoz",
|
||||
"version": "v0.102.1",
|
||||
"date": "2025-11-20T12:20:18Z"
|
||||
},
|
||||
{
|
||||
"name": "kimai/kimai",
|
||||
"version": "2.44.0",
|
||||
@ -444,11 +604,6 @@
|
||||
"version": "v2.7.12",
|
||||
"date": "2025-05-29T17:08:26Z"
|
||||
},
|
||||
{
|
||||
"name": "dgtlmoon/changedetection.io",
|
||||
"version": "0.51.3",
|
||||
"date": "2025-11-19T15:45:28Z"
|
||||
},
|
||||
{
|
||||
"name": "grafana/grafana",
|
||||
"version": "v12.3.0",
|
||||
@ -499,21 +654,11 @@
|
||||
"version": "v0.7.5",
|
||||
"date": "2025-11-18T10:50:21Z"
|
||||
},
|
||||
{
|
||||
"name": "wazuh/wazuh",
|
||||
"version": "coverity-w47-4.14.2",
|
||||
"date": "2025-11-18T07:24:43Z"
|
||||
},
|
||||
{
|
||||
"name": "0xERR0R/blocky",
|
||||
"version": "v0.28.2",
|
||||
"date": "2025-11-18T05:51:46Z"
|
||||
},
|
||||
{
|
||||
"name": "ipfs/kubo",
|
||||
"version": "v0.38.2",
|
||||
"date": "2025-10-30T02:44:09Z"
|
||||
},
|
||||
{
|
||||
"name": "VictoriaMetrics/VictoriaMetrics",
|
||||
"version": "pmm-6401-v1.130.0",
|
||||
@ -524,11 +669,6 @@
|
||||
"version": "v1.36.4",
|
||||
"date": "2025-11-17T17:15:29Z"
|
||||
},
|
||||
{
|
||||
"name": "Paymenter/Paymenter",
|
||||
"version": "v1.4.5",
|
||||
"date": "2025-11-17T15:20:35Z"
|
||||
},
|
||||
{
|
||||
"name": "rabbitmq/rabbitmq-server",
|
||||
"version": "v4.2.1",
|
||||
@ -564,11 +704,6 @@
|
||||
"version": "v2.15.0",
|
||||
"date": "2025-11-16T18:53:49Z"
|
||||
},
|
||||
{
|
||||
"name": "Luligu/matterbridge",
|
||||
"version": "3.3.8",
|
||||
"date": "2025-11-16T17:04:37Z"
|
||||
},
|
||||
{
|
||||
"name": "AlexxIT/go2rtc",
|
||||
"version": "v1.9.12",
|
||||
@ -594,11 +729,6 @@
|
||||
"version": "flowise@3.0.11",
|
||||
"date": "2025-11-16T01:29:06Z"
|
||||
},
|
||||
{
|
||||
"name": "karakeep-app/karakeep",
|
||||
"version": "android/v1.8.2-2",
|
||||
"date": "2025-11-15T13:18:41Z"
|
||||
},
|
||||
{
|
||||
"name": "cloudreve/cloudreve",
|
||||
"version": "4.10.1",
|
||||
@ -624,11 +754,6 @@
|
||||
"version": "v4.6.5",
|
||||
"date": "2025-11-14T06:59:44Z"
|
||||
},
|
||||
{
|
||||
"name": "chrisvel/tududi",
|
||||
"version": "v0.86.1",
|
||||
"date": "2025-11-14T05:05:44Z"
|
||||
},
|
||||
{
|
||||
"name": "PrivateBin/PrivateBin",
|
||||
"version": "1.7.9",
|
||||
@ -639,36 +764,16 @@
|
||||
"version": "v2.40.3",
|
||||
"date": "2025-10-30T09:35:37Z"
|
||||
},
|
||||
{
|
||||
"name": "evcc-io/evcc",
|
||||
"version": "0.209.8",
|
||||
"date": "2025-11-13T07:20:49Z"
|
||||
},
|
||||
{
|
||||
"name": "pymedusa/Medusa",
|
||||
"version": "v1.0.25",
|
||||
"date": "2025-11-12T16:57:54Z"
|
||||
},
|
||||
{
|
||||
"name": "cockpit-project/cockpit",
|
||||
"version": "351",
|
||||
"date": "2025-11-12T11:28:06Z"
|
||||
},
|
||||
{
|
||||
"name": "moghtech/komodo",
|
||||
"version": "v1.19.5",
|
||||
"date": "2025-09-27T20:59:46Z"
|
||||
},
|
||||
{
|
||||
"name": "Brandawg93/PeaNUT",
|
||||
"version": "v5.17.0",
|
||||
"date": "2025-11-11T20:15:54Z"
|
||||
},
|
||||
{
|
||||
"name": "juanfont/headscale",
|
||||
"version": "v0.27.1",
|
||||
"date": "2025-11-11T19:32:29Z"
|
||||
},
|
||||
{
|
||||
"name": "gethomepage/homepage",
|
||||
"version": "v1.7.0",
|
||||
@ -679,26 +784,11 @@
|
||||
"version": "1.1.0",
|
||||
"date": "2025-11-11T14:30:28Z"
|
||||
},
|
||||
{
|
||||
"name": "FlareSolverr/FlareSolverr",
|
||||
"version": "v3.4.5",
|
||||
"date": "2025-11-11T01:58:31Z"
|
||||
},
|
||||
{
|
||||
"name": "MediaBrowser/Emby.Releases",
|
||||
"version": "4.9.1.90",
|
||||
"date": "2025-11-11T01:00:32Z"
|
||||
},
|
||||
{
|
||||
"name": "postgres/postgres",
|
||||
"version": "REL_13_23",
|
||||
"date": "2025-11-10T21:59:18Z"
|
||||
},
|
||||
{
|
||||
"name": "autobrr/autobrr",
|
||||
"version": "v1.69.0",
|
||||
"date": "2025-11-10T17:22:00Z"
|
||||
},
|
||||
{
|
||||
"name": "navidrome/navidrome",
|
||||
"version": "v0.58.5",
|
||||
@ -714,21 +804,11 @@
|
||||
"version": "v1.0.0-beta19",
|
||||
"date": "2025-11-09T17:26:30Z"
|
||||
},
|
||||
{
|
||||
"name": "authelia/authelia",
|
||||
"version": "v4.39.14",
|
||||
"date": "2025-11-09T07:18:40Z"
|
||||
},
|
||||
{
|
||||
"name": "apache/couchdb",
|
||||
"version": "3.5.1",
|
||||
"date": "2025-11-09T05:09:28Z"
|
||||
},
|
||||
{
|
||||
"name": "hargata/lubelog",
|
||||
"version": "v1.5.4",
|
||||
"date": "2025-11-08T16:26:45Z"
|
||||
},
|
||||
{
|
||||
"name": "heiher/hev-socks5-server",
|
||||
"version": "2.11.1",
|
||||
@ -744,26 +824,11 @@
|
||||
"version": "2025.11.1",
|
||||
"date": "2025-11-07T17:05:45Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
"version": "debian/12.1.35",
|
||||
"date": "2025-11-07T14:35:24Z"
|
||||
},
|
||||
{
|
||||
"name": "Ombi-app/Ombi",
|
||||
"version": "v4.52.0",
|
||||
"date": "2025-11-06T22:39:26Z"
|
||||
},
|
||||
{
|
||||
"name": "HabitRPG/habitica",
|
||||
"version": "v5.41.6",
|
||||
"date": "2025-11-06T15:32:07Z"
|
||||
},
|
||||
{
|
||||
"name": "pocket-id/pocket-id",
|
||||
"version": "v1.15.0",
|
||||
"date": "2025-11-06T15:03:22Z"
|
||||
},
|
||||
{
|
||||
"name": "transmission/transmission",
|
||||
"version": "4.0.1-beta.1",
|
||||
@ -774,11 +839,6 @@
|
||||
"version": "9.0.112",
|
||||
"date": "2025-11-06T07:49:59Z"
|
||||
},
|
||||
{
|
||||
"name": "Kozea/Radicale",
|
||||
"version": "v3.5.8",
|
||||
"date": "2025-11-06T05:32:51Z"
|
||||
},
|
||||
{
|
||||
"name": "Notifiarr/notifiarr",
|
||||
"version": "v0.9.1",
|
||||
@ -824,11 +884,6 @@
|
||||
"version": "v4.0.16.2944",
|
||||
"date": "2025-11-05T01:56:48Z"
|
||||
},
|
||||
{
|
||||
"name": "jhuckaby/Cronicle",
|
||||
"version": "v0.9.100",
|
||||
"date": "2025-11-04T17:44:39Z"
|
||||
},
|
||||
{
|
||||
"name": "prometheus/alertmanager",
|
||||
"version": "v0.29.0",
|
||||
@ -919,11 +974,6 @@
|
||||
"version": "cassandra-5.0.6",
|
||||
"date": "2025-10-29T07:40:47Z"
|
||||
},
|
||||
{
|
||||
"name": "pi-hole/pi-hole",
|
||||
"version": "v6.2.2",
|
||||
"date": "2025-10-28T17:07:47Z"
|
||||
},
|
||||
{
|
||||
"name": "librespeed/speedtest-rust",
|
||||
"version": "v1.4.0",
|
||||
@ -934,16 +984,6 @@
|
||||
"version": "v3.0.0-beta.2",
|
||||
"date": "2025-10-28T10:16:29Z"
|
||||
},
|
||||
{
|
||||
"name": "ErsatzTV/ErsatzTV",
|
||||
"version": "v25.8.0",
|
||||
"date": "2025-10-26T14:23:37Z"
|
||||
},
|
||||
{
|
||||
"name": "crowdsecurity/crowdsec",
|
||||
"version": "v1.7.3",
|
||||
"date": "2025-10-24T10:51:12Z"
|
||||
},
|
||||
{
|
||||
"name": "drakkan/sftpgo",
|
||||
"version": "v2.7.0",
|
||||
@ -959,11 +999,6 @@
|
||||
"version": "2.0.2",
|
||||
"date": "2025-10-22T17:03:54Z"
|
||||
},
|
||||
{
|
||||
"name": "NLnetLabs/unbound",
|
||||
"version": "release-1.24.1",
|
||||
"date": "2025-10-22T10:28:00Z"
|
||||
},
|
||||
{
|
||||
"name": "kyantech/Palmr",
|
||||
"version": "v3.2.5-beta",
|
||||
@ -1029,11 +1064,6 @@
|
||||
"version": "v2.30.0",
|
||||
"date": "2025-10-08T16:03:49Z"
|
||||
},
|
||||
{
|
||||
"name": "gotson/komga",
|
||||
"version": "1.23.5",
|
||||
"date": "2025-10-08T07:31:37Z"
|
||||
},
|
||||
{
|
||||
"name": "C4illin/ConvertX",
|
||||
"version": "v0.15.1",
|
||||
@ -1094,11 +1124,6 @@
|
||||
"version": "1.2.39",
|
||||
"date": "2025-09-25T15:57:02Z"
|
||||
},
|
||||
{
|
||||
"name": "alexta69/metube",
|
||||
"version": "2025.09.24",
|
||||
"date": "2025-09-24T13:51:23Z"
|
||||
},
|
||||
{
|
||||
"name": "gotify/server",
|
||||
"version": "v2.7.3",
|
||||
@ -1154,11 +1179,6 @@
|
||||
"version": "v0.8.1",
|
||||
"date": "2025-09-14T06:45:23Z"
|
||||
},
|
||||
{
|
||||
"name": "go-vikunja/vikunja",
|
||||
"version": "v1.0.0-rc0",
|
||||
"date": "2025-08-17T18:47:15Z"
|
||||
},
|
||||
{
|
||||
"name": "zerotier/ZeroTierOne",
|
||||
"version": "1.16.0",
|
||||
@ -1179,11 +1199,6 @@
|
||||
"version": "0.6",
|
||||
"date": "2025-09-05T06:05:04Z"
|
||||
},
|
||||
{
|
||||
"name": "healthchecks/healthchecks",
|
||||
"version": "v3.11.2",
|
||||
"date": "2025-09-02T08:36:57Z"
|
||||
},
|
||||
{
|
||||
"name": "seanmorley15/AdventureLog",
|
||||
"version": "v0.11.0",
|
||||
@ -1459,11 +1474,6 @@
|
||||
"version": "v2.7.1",
|
||||
"date": "2025-02-22T01:14:41Z"
|
||||
},
|
||||
{
|
||||
"name": "recyclarr/recyclarr",
|
||||
"version": "v7.4.1",
|
||||
"date": "2025-02-15T20:54:00Z"
|
||||
},
|
||||
{
|
||||
"name": "actualbudget/actual-server",
|
||||
"version": "v25.2.1",
|
||||
@ -1489,21 +1499,11 @@
|
||||
"version": "v0.7.3",
|
||||
"date": "2024-12-15T10:18:06Z"
|
||||
},
|
||||
{
|
||||
"name": "phpipam/phpipam",
|
||||
"version": "v1.7.3",
|
||||
"date": "2024-11-27T21:26:11Z"
|
||||
},
|
||||
{
|
||||
"name": "swizzin/swizzin",
|
||||
"version": "stable",
|
||||
"date": "2021-06-14T23:31:47Z"
|
||||
},
|
||||
{
|
||||
"name": "sabre-io/Baikal",
|
||||
"version": "0.10.1",
|
||||
"date": "2024-11-10T10:25:45Z"
|
||||
},
|
||||
{
|
||||
"name": "CorentinTh/it-tools",
|
||||
"version": "v2024.10.22-7ca5933",
|
||||
|
||||
@ -15,7 +15,7 @@ export const navbarLinks = [
|
||||
text: "GitHub",
|
||||
},
|
||||
{
|
||||
href: `https://discord.gg/2wvnMDgdnU`,
|
||||
href: `https://discord.gg/3AnUqsXnmK`,
|
||||
event: "Discord",
|
||||
icon: <FaDiscord className="h-4 w-4" />,
|
||||
text: "Discord",
|
||||
|
||||
@ -19,10 +19,12 @@ $STD apt install -y \
|
||||
g++
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
create_self_signed_cert
|
||||
|
||||
msg_info "Installing Actual Budget"
|
||||
cd /opt
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
RELEASE=$(get_latest_github_release "actualbudget/actual")
|
||||
mkdir -p /opt/actualbudget-data/{server-files,upload,migrate,user-files,migrations,config}
|
||||
chown -R root:root /opt/actualbudget-data
|
||||
chmod -R 755 /opt/actualbudget-data
|
||||
@ -42,25 +44,15 @@ cat <<EOF >/opt/actualbudget-data/config.json
|
||||
"fc00::/7"
|
||||
],
|
||||
"https": {
|
||||
"key": "/opt/actualbudget/selfhost.key",
|
||||
"cert": "/opt/actualbudget/selfhost.crt"
|
||||
"key": "/etc/ssl/actualbudget/actualbudget.key",
|
||||
"cert": "/etc/ssl/actualbudget/actualbudget.crt"
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
mkdir -p /opt/actualbudget
|
||||
cd /opt/actualbudget || exit
|
||||
$STD npm install --location=global @actual-app/sync-server
|
||||
$STD openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout selfhost.key -out selfhost.crt <<EOF
|
||||
US
|
||||
California
|
||||
San Francisco
|
||||
My Organization
|
||||
My Unit
|
||||
localhost
|
||||
myemail@example.com
|
||||
EOF
|
||||
echo "${RELEASE}" >"/opt/actualbudget_version.txt"
|
||||
echo "${RELEASE}" >~/.actualbudget
|
||||
msg_ok "Installed Actual Budget"
|
||||
|
||||
msg_info "Creating Service"
|
||||
|
||||
@ -72,7 +72,6 @@ curl -fsSL "https://downloads.apache.org/guacamole/${RELEASE_SERVER}/binary/guac
|
||||
$STD tar -xf ~/guacamole-auth-jdbc-$RELEASE_SERVER.tar.gz
|
||||
mv ~/guacamole-auth-jdbc-$RELEASE_SERVER/mysql/guacamole-auth-jdbc-mysql-$RELEASE_SERVER.jar /etc/guacamole/extensions/
|
||||
rm -rf ~/mysql-connector-j-9.3.0{,.tar.gz}
|
||||
rm -rf ~/guacamole-auth-jdbc-$RELEASE_SERVER{,.tar.gz}
|
||||
msg_ok "Setup Apache Guacamole"
|
||||
|
||||
msg_info "Setup Database"
|
||||
@ -98,6 +97,7 @@ cat *.sql | mariadb -u root ${DB_NAME}
|
||||
echo "mysql-password: $DB_PASS"
|
||||
|
||||
} >>/etc/guacamole/guacamole.properties
|
||||
rm -rf ~/guacamole-auth-jdbc-$RELEASE_SERVER{,.tar.gz}
|
||||
msg_ok "Setup Database"
|
||||
|
||||
msg_info "Setup Service"
|
||||
|
||||
@ -1,113 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: MickLesk (Canbiz)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/documenso/documenso
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Setup Functions"
|
||||
setup_local_ip_helper
|
||||
import_local_ip
|
||||
msg_ok "Setup Functions"
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt-get install -y \
|
||||
libc6 \
|
||||
make \
|
||||
cmake \
|
||||
jq \
|
||||
python3 \
|
||||
python3-bcrypt
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="22" NODE_MODULE="turbo@1.9.3" setup_nodejs
|
||||
PG_VERSION="16" setup_postgresql
|
||||
|
||||
msg_info "Setting up PostgreSQL"
|
||||
DB_NAME="documenso_db"
|
||||
DB_USER="documenso_user"
|
||||
DB_PASS="$(openssl rand -base64 18 | tr -dc 'a-zA-Z0-9' | cut -c1-13)"
|
||||
$STD sudo -u postgres psql -c "CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';"
|
||||
$STD sudo -u postgres psql -c "CREATE DATABASE $DB_NAME WITH OWNER $DB_USER ENCODING 'UTF8' TEMPLATE template0;"
|
||||
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET client_encoding TO 'utf8';"
|
||||
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET default_transaction_isolation TO 'read committed';"
|
||||
$STD sudo -u postgres psql -c "ALTER ROLE $DB_USER SET timezone TO 'UTC'"
|
||||
{
|
||||
echo "Documenso-Credentials"
|
||||
echo "Database Name: $DB_NAME"
|
||||
echo "Database User: $DB_USER"
|
||||
echo "Database Password: $DB_PASS"
|
||||
} >>~/documenso.creds
|
||||
msg_ok "Set up PostgreSQL"
|
||||
|
||||
msg_info "Installing Documenso (Patience)"
|
||||
cd /opt
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/documenso/documenso/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
curl -fsSL "https://github.com/documenso/documenso/archive/refs/tags/v${RELEASE}.zip" -o v${RELEASE}.zip
|
||||
$STD unzip v${RELEASE}.zip
|
||||
mv documenso-${RELEASE} /opt/documenso
|
||||
cd /opt/documenso
|
||||
mv .env.example /opt/documenso/.env
|
||||
sed -i \
|
||||
-e "s|^NEXTAUTH_SECRET=.*|NEXTAUTH_SECRET='$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)'|" \
|
||||
-e "s|^NEXT_PRIVATE_ENCRYPTION_KEY=.*|NEXT_PRIVATE_ENCRYPTION_KEY='$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)'|" \
|
||||
-e "s|^NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=.*|NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY='$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)'|" \
|
||||
-e "s|^DOCUMENSO_ENCRYPTION_KEY=.*|DOCUMENSO_ENCRYPTION_KEY='$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)'|" \
|
||||
-e "s|^DOCUMENSO_ENCRYPTION_SECONDARY_KEY=.*|DOCUMENSO_ENCRYPTION_SECONDARY_KEY='$(openssl rand -base64 32 | tr -dc 'a-zA-Z0-9' | cut -c1-32)'|" \
|
||||
-e "s|^NEXT_PUBLIC_WEBAPP_URL=.*|NEXT_PUBLIC_WEBAPP_URL='http://${LOCAL_IP}:3000'|" \
|
||||
-e "s|^NEXT_PRIVATE_INTERNAL_WEBAPP_URL=.*|NEXT_PRIVATE_INTERNAL_WEBAPP_URL=\"http://${LOCAL_IP}:3000\"|" \
|
||||
-e "s|^NEXT_PRIVATE_DATABASE_URL=.*|NEXT_PRIVATE_DATABASE_URL=\"postgres://$DB_USER:$DB_PASS@localhost:5432/$DB_NAME\"|" \
|
||||
-e "s|^NEXT_PRIVATE_DIRECT_DATABASE_URL=.*|NEXT_PRIVATE_DIRECT_DATABASE_URL=\"postgres://$DB_USER:$DB_PASS@localhost:5432/$DB_NAME\"|" \
|
||||
/opt/documenso/.env
|
||||
export TURBO_CACHE=1
|
||||
export NEXT_TELEMETRY_DISABLED=1
|
||||
export CYPRESS_INSTALL_BINARY=0
|
||||
export NODE_OPTIONS="--max-old-space-size=4096"
|
||||
$STD turbo prune --scope=@documenso/remix --docker
|
||||
cd out
|
||||
$STD cp ../lingui.config.ts .
|
||||
$STD cp ../turbo.json .
|
||||
$STD cp -r json/* .
|
||||
$STD npm install --legacy-peer-deps
|
||||
$STD cp -r full/* .
|
||||
$STD turbo run build --filter=@documenso/remix
|
||||
$STD npm run prisma:migrate-deploy
|
||||
echo "${RELEASE}" >"/opt/${APPLICATION}_version.txt"
|
||||
msg_ok "Installed Documenso"
|
||||
|
||||
msg_info "Create User"
|
||||
PASSWORD_HASH=$(python3 -c "import bcrypt; print(bcrypt.hashpw(b'helper-scripts', bcrypt.gensalt(rounds=12)).decode())")
|
||||
$STD sudo -u postgres psql -d documenso_db -c "INSERT INTO \"User\" (name, email, \"emailVerified\", password, \"identityProvider\", roles, \"createdAt\", \"lastSignedIn\", \"updatedAt\") VALUES ('helper-scripts', 'helper-scripts@local.com', '2025-01-20 17:14:45.058', '$PASSWORD_HASH', 'DOCUMENSO', ARRAY['USER', 'ADMIN']::\"Role\"[], '2025-01-20 16:04:05.543', '2025-01-20 16:14:55.249', '2025-01-20 16:14:55.25') RETURNING id;"
|
||||
$STD npm run prisma:migrate-deploy
|
||||
msg_ok "User created"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/documenso.service
|
||||
[Unit]
|
||||
Description=Documenso Service
|
||||
After=network.target postgresql.service
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/opt/documenso
|
||||
ExecStart=/usr/bin/turbo run start --filter=@documenso/remix
|
||||
Restart=always
|
||||
EnvironmentFile=/opt/documenso/.env
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now documenso
|
||||
$STD turbo daemon stop
|
||||
msg_ok "Created Service"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
@ -1,93 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: Slaviša Arežina (tremor021)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/HabitRPG/habitica
|
||||
|
||||
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 \
|
||||
libkrb5-dev \
|
||||
build-essential \
|
||||
git
|
||||
curl -fsSL "http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2_amd64.deb" -o "libssl1.1_1.1.1f-1ubuntu2_amd64.deb"
|
||||
$STD dpkg -i libssl1.1_1.1.1f-1ubuntu2_amd64.deb
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
NODE_VERSION="20" NODE_MODULE="gulp-cli,mocha,npm@10" setup_nodejs
|
||||
fetch_and_deploy_gh_release "habitica" "HabitRPG/habitica" "tarball" "latest" "/opt/habitica"
|
||||
|
||||
msg_info "Setup ${APPLICATION}"
|
||||
IPADDRESS=$(hostname -I | awk '{print $1}')
|
||||
cd /opt/habitica
|
||||
$STD npm i
|
||||
$STD npm run postinstall
|
||||
cp config.json.example config.json
|
||||
sed -i "s/\"TRUSTED_DOMAINS\": \"/&http:\/\/$IPADDRESS:3000,/" config.json
|
||||
$STD npm run client:build
|
||||
$STD gulp build:prod
|
||||
|
||||
msg_ok "Setup ${APPLICATION}"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/habitica-mongodb.service
|
||||
[Unit]
|
||||
Description=Habitica MongoDB Service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
WorkingDirectory=/opt/habitica
|
||||
ExecStart=/usr/bin/npm run mongo:dev
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
cat <<EOF >/etc/systemd/system/habitica.service
|
||||
[Unit]
|
||||
Description=Habitica Service
|
||||
After=habitica-mongodb.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
WorkingDirectory=/opt/habitica
|
||||
ExecStart=/usr/bin/npm start
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
cat <<EOF >/etc/systemd/system/habitica-client.service
|
||||
[Unit]
|
||||
Description=Habitica Client Service
|
||||
After=habitica.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=root
|
||||
WorkingDirectory=/opt/habitica
|
||||
ExecStart=/usr/bin/npm run client:dev
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now habitica-mongodb
|
||||
systemctl enable -q --now habitica
|
||||
systemctl enable -q --now habitica-client
|
||||
msg_ok "Created Service"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
@ -88,7 +88,7 @@ sed -i "s|^STORAGE_LOCAL_ROOT_PATH=.*|STORAGE_LOCAL_ROOT_PATH=/opt/openarchiver-
|
||||
sed -i "s|^JWT_SECRET=.*|JWT_SECRET=$JWT_KEY|g" /opt/openarchiver/.env
|
||||
sed -i "s|^ENCRYPTION_KEY=.*|ENCRYPTION_KEY=$SECRET_KEY|g" /opt/openarchiver/.env
|
||||
sed -i "s|^TIKA_URL=.*|TIKA_URL=|g" /opt/openarchiver/.env
|
||||
echo "ORIGIN=http://$IP_ADDR:3000" >>/opt/openarchiver/.env
|
||||
sed -i "s|^ORIGIN=.*|ORIGIN=http://$IP_ADDR:3000|g" /opt/openarchiver/.env
|
||||
$STD pnpm install --shamefully-hoist --frozen-lockfile --prod=false
|
||||
$STD pnpm run build:oss
|
||||
$STD pnpm db:migrate
|
||||
|
||||
@ -20,7 +20,7 @@ $STD apt install -y \
|
||||
expect
|
||||
msg_ok "Dependencies installed."
|
||||
|
||||
NODE_VERSION=22 setup_nodejs
|
||||
NODE_VERSION=24 setup_nodejs
|
||||
fetch_and_deploy_gh_release "ProxmoxVE-Local" "community-scripts/ProxmoxVE-Local"
|
||||
|
||||
msg_info "Installing PVE Scripts local"
|
||||
|
||||
64
install/qdrant-install.sh
Normal file
64
install/qdrant-install.sh
Normal file
@ -0,0 +1,64 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: MickLesk (CanbiZ)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/qdrant/qdrant
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
fetch_and_deploy_gh_release "qdrant" "qdrant/qdrant" "binary" "latest" "/usr/bin/qdrant"
|
||||
|
||||
msg_info "Creating Qdrant Configuration"
|
||||
mkdir -p /var/lib/qdrant/storage
|
||||
mkdir -p /var/lib/qdrant/snapshots
|
||||
mkdir -p /etc/qdrant
|
||||
chown -R root:root /var/lib/qdrant
|
||||
chmod -R 755 /var/lib/qdrant
|
||||
|
||||
cat >/etc/qdrant/config.yaml <<EOF
|
||||
log_level: INFO
|
||||
|
||||
storage:
|
||||
storage_path: /var/lib/qdrant/storage
|
||||
snapshots_path: /var/lib/qdrant/snapshots
|
||||
|
||||
service:
|
||||
host: 0.0.0.0
|
||||
http_port: 6333
|
||||
grpc_port: 6334
|
||||
enable_cors: true
|
||||
EOF
|
||||
msg_ok "Created Qdrant Configuration"
|
||||
|
||||
msg_info "Creating Qdrant Service"
|
||||
cat >/etc/systemd/system/qdrant.service <<EOF
|
||||
[Unit]
|
||||
Description=Qdrant Vector Search Engine
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=/usr/bin/qdrant --config-path /etc/qdrant/config.yaml
|
||||
WorkingDirectory=/var/lib/qdrant
|
||||
Restart=on-failure
|
||||
RestartSec=5
|
||||
User=root
|
||||
LimitNOFILE=1048576
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now qdrant
|
||||
msg_ok "Created Qdrant Service"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
26
install/valkey-install.sh
Normal file
26
install/valkey-install.sh
Normal file
@ -0,0 +1,26 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: pshankinclarke (lazarillo)
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://valkey.io/
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Valkey"
|
||||
$STD apt update
|
||||
$STD apt install -y valkey
|
||||
sed -i 's/^bind .*/bind 0.0.0.0/' /etc/valkey/valkey.conf
|
||||
systemctl enable -q --now valkey-server
|
||||
systemctl restart valkey-server
|
||||
msg_ok "Installed Valkey"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
@ -1551,7 +1551,8 @@ create_self_signed_cert() {
|
||||
|
||||
mkdir -p "$CERT_DIR"
|
||||
$STD openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 \
|
||||
-subj "/C=US/ST=State/L=City/O=Organization/CN=${APP_NAME}" \
|
||||
-subj "/CN=${APP_NAME}" \
|
||||
-addext "subjectAltName=DNS:${APP_NAME}" \
|
||||
-keyout "$CERT_KEY" \
|
||||
-out "$CERT_CRT" || {
|
||||
msg_error "Failed to create self-signed certificate"
|
||||
|
||||
Reference in New Issue
Block a user