This commit is contained in:
John Doe
2026-03-09 11:19:57 -04:00
parent b4c8faf65d
commit 2c98304b91
5 changed files with 0 additions and 367 deletions
-82
View File
@@ -1,82 +0,0 @@
#!/usr/bin/env bash
source <(curl -fsSL https://raw.githubusercontent.com/community-unscripted/ProxmoxVED/main/misc/build.func)
# Copyright (c) 2021-2026 community-scripts ORG
# Author: community-scripts
# License: MIT | https://github.com/community-scripts/ProxmoxVED/raw/main/LICENSE
# Source: https://github.com/mcmonkeyprojects/SwarmUI
APP="SwarmUI"
var_tags="${var_tags:-ai}"
var_cpu="${var_cpu:-4}"
var_ram="${var_ram:-8192}"
var_disk="${var_disk:-50}"
var_os="${var_os:-debian}"
var_version="${var_version:-13}"
var_unprivileged="${var_unprivileged:-1}"
var_gpu="${var_gpu:-yes}"
header_info "$APP"
variables
color
catch_errors
function update_script() {
header_info
check_container_storage
check_container_resources
if [[ ! -d /opt/swarmui ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
cd /opt/swarmui
LOCAL_VERSION=$(git rev-parse HEAD)
REMOTE_VERSION=$(git ls-remote origin HEAD | awk '{print $1}')
if [[ "$LOCAL_VERSION" != "$REMOTE_VERSION" ]]; then
msg_info "Stopping Service"
systemctl stop swarmui
msg_ok "Stopped Service"
msg_info "Backing up Data"
cp -r /opt/swarmui/Data /opt/swarmui_data_backup
cp -r /opt/swarmui/Models /opt/swarmui_models_backup 2>/dev/null || true
cp -r /opt/swarmui/Output /opt/swarmui_output_backup 2>/dev/null || true
msg_ok "Backed up Data"
msg_info "Updating SwarmUI"
$STD git fetch origin
$STD git reset --hard origin/main
msg_ok "Updated SwarmUI"
msg_info "Rebuilding SwarmUI"
$STD dotnet build src/SwarmUI.csproj --configuration Release -o ./bin
msg_ok "Rebuilt SwarmUI"
msg_info "Restoring Data"
cp -r /opt/swarmui_data_backup/. /opt/swarmui/Data/
cp -r /opt/swarmui_models_backup/. /opt/swarmui/Models/ 2>/dev/null || true
cp -r /opt/swarmui_output_backup/. /opt/swarmui/Output/ 2>/dev/null || true
rm -rf /opt/swarmui_data_backup /opt/swarmui_models_backup /opt/swarmui_output_backup
msg_ok "Restored Data"
msg_info "Starting Service"
systemctl start swarmui
msg_ok "Started Service"
msg_ok "Updated successfully!"
else
msg_info "No update required. SwarmUI is already up to date."
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}:7801${CL}"
-42
View File
@@ -1,42 +0,0 @@
{
"name": "Agregarr",
"slug": "agregarr",
"categories": [13],
"date_created": "2026-03-08",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 7171,
"documentation": "https://agregarr.org/docs/",
"website": "https://github.com/agregarr/agregarr",
"logo": "https://raw.githubusercontent.com/agregarr/agregarr/main/public/logo_full.svg",
"config_path": "/opt/agregarr/config",
"description": "Agregarr keeps your Plex Home and Recommended fresh by frequently updating it with Collections from various sources, including Trakt, IMDb, TMDB, Letterboxd, MDBList, FlixPatrol, AniList and MyAnimeList.",
"install_methods": [
{
"type": "default",
"script": "ct/agregarr.sh",
"resources": {
"cpu": 2,
"ram": 4096,
"hdd": 8,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Configuration is created on first run. Access the web UI to complete setup.",
"type": "info"
},
{
"text": "Requires connection to Plex, Radarr/Sonarr, and/or Overseerr for full functionality.",
"type": "info"
}
]
}
-56
View File
@@ -1,56 +0,0 @@
{
"name": "Lemonade",
"slug": "lemonade",
"categories": [
20
],
"date_created": "2026-03-06",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8000,
"documentation": "https://lemonade-server.ai/docs/",
"config_path": "/etc/lemonade/lemonade.conf",
"website": "https://lemonade-server.ai/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/lemonade.webp",
"description": "Lemonade is a lightweight LLM inference server with OpenAI-compatible APIs, supporting multiple backends including CPU, Vulkan, and ROCm.",
"install_methods": [
{
"type": "default",
"script": "ct/lemonade.sh",
"resources": {
"cpu": 2,
"ram": 4096,
"hdd": 10,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Lemonade Server provides an OpenAI-compatible API for LLM inference.",
"type": "info"
},
{
"text": "Server listens on local IP by default - accessible from your network.",
"type": "info"
},
{
"text": "Configuration file: /etc/lemonade/lemonade.conf - customize host and port settings.",
"type": "info"
},
{
"text": "API keys are stored in /etc/lemonade/secrets.conf - add your API keys there and restart the service.",
"type": "info"
},
{
"text": "Supports CPU and Vulkan backends currently; ROCm support for AMD GPUs is planned.",
"type": "info"
}
]
}
-64
View File
@@ -1,64 +0,0 @@
{
"name": "AMD ROCm",
"slug": "rocm",
"categories": [
20
],
"date_created": "2026-03-06",
"type": "addon",
"updateable": true,
"privileged": false,
"interface_port": null,
"documentation": "https://rocm.docs.amd.com/",
"website": "https://rocm.docs.amd.com/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/amd.webp",
"config_path": "/etc/profile.d/rocm.sh",
"description": "AMD ROCm (Radeon Open Compute) is a software stack for GPU programming on AMD GPUs. It provides a comprehensive development platform for high-performance computing and machine learning applications.",
"install_methods": [
{
"type": "default",
"script": "tools/addon/rocm.sh",
"resources": {
"cpu": null,
"ram": null,
"hdd": null,
"os": null,
"version": null
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Execute within an existing LXC Console",
"type": "info"
},
{
"text": "Supported OS: Debian 12, Debian 13, Ubuntu 22.04, Ubuntu 24.04",
"type": "info"
},
{
"text": "Requires GPU passthrough to the LXC container before installation",
"type": "warning"
},
{
"text": "GPU passthrough: Find the GID from 'ls -la /dev/dri/renderD128' on host, then add to as a new device to /etc/pve/lxc/<CTID>.conf: dev<#>: /dev/kfd,gid=<GID>",
"type": "warning"
},
{
"text": "After installation, run 'source /etc/profile.d/rocm.sh' or log out/in to update PATH",
"type": "info"
},
{
"text": "Verify installation with: rocminfo and rocm-smi commands",
"type": "info"
},
{
"text": "If rocminfo shows 'Unable to open /dev/kfd', GPU passthrough is not configured correctly",
"type": "warning"
}
]
}
-123
View File
@@ -1,123 +0,0 @@
#!/usr/bin/env bash
# Copyright (c) 2021-2026 community-scripts ORG
# Author: community-scripts
# License: MIT | https://github.com/community-scripts/ProxmoxVED/raw/main/LICENSE
# Source: https://github.com/mcmonkeyprojects/SwarmUI
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
color
verb_ip6
catch_errors
setting_up_container
network_check
update_os
msg_info "Installing Dependencies"
setup_deb822_repo \
"microsoft" \
"https://packages.microsoft.com/keys/microsoft-2025.asc" \
"https://packages.microsoft.com/debian/13/prod/" \
"trixie" \
"main"
$STD apt install -y \
git \
libicu-dev \
libssl-dev \
dotnet-sdk-8.0 \
aspnetcore-runtime-8.0 \
python3-full \
python3-pip \
python3-venv
msg_ok "Installed Dependencies"
msg_info "Cloning SwarmUI"
mkdir -p /opt/swarmui
$STD git clone https://github.com/mcmonkeyprojects/SwarmUI.git /opt/swarmui
cd /opt/swarmui
msg_ok "Cloned SwarmUI"
msg_info "Building SwarmUI"
$STD dotnet build src/SwarmUI.csproj --configuration Release -o ./bin
msg_ok "Built SwarmUI"
msg_info "Setting up ComfyUI Backend"
mkdir -p /opt/swarmui/dlbackend
cd /opt/swarmui/dlbackend
$STD git clone https://github.com/comfyanonymous/ComfyUI.git comfy
cd comfy
$STD python3 -m venv /opt/swarmui/dlbackend/comfy/venv
source /opt/swarmui/dlbackend/comfy/venv/bin/activate
PYTORCH_INDEX="https://download.pytorch.org/whl/cpu"
if command -v nvidia-smi &>/dev/null && nvidia-smi &>/dev/null; then
PYTORCH_INDEX="https://download.pytorch.org/whl/cu128"
msg_info "NVIDIA GPU detected - installing PyTorch with CUDA 12.8 support"
elif [[ -d /dev/dri ]] && ls /dev/dri/render* &>/dev/null; then
PYTORCH_INDEX="https://download.pytorch.org/whl/rocm7.1"
msg_info "AMD GPU detected - installing PyTorch with ROCm 7.1 support"
else
msg_info "No GPU detected - installing PyTorch CPU version"
fi
$STD pip install torch torchvision torchaudio --index-url "$PYTORCH_INDEX"
$STD pip install -r requirements.txt
deactivate
msg_ok "Set up ComfyUI Backend"
msg_info "Creating Directories"
mkdir -p /opt/swarmui/Data
mkdir -p /opt/swarmui/Models
mkdir -p /opt/swarmui/Output
msg_ok "Created Directories"
msg_info "Configuring SwarmUI"
cat <<EOF >/opt/swarmui/Data/Settings.yaml
# SwarmUI Configuration
# For full documentation, see: https://github.com/mcmonkeyprojects/SwarmUI
# Network Settings
host: 0.0.0.0
port: 7801
# Paths
data_path: Data
model_path: Models
output_path: Output
# Backend Settings
backends:
- type: comfyui
name: local_comfyui
path: dlbackend/comfy
enabled: true
# Environment
environment: production
EOF
msg_ok "Configured SwarmUI"
msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/swarmui.service
[Unit]
Description=SwarmUI - Stable Diffusion WebUI
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/opt/swarmui
ExecStart=/usr/bin/dotnet /opt/swarmui/bin/SwarmUI.dll --launch_mode none --host 0.0.0.0
Environment=ASPNETCORE_URLS=http://0.0.0.0:7801
Environment=DOTNET_CONTENTROOT=/opt/swarmui
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
systemctl enable -q --now swarmui
msg_ok "Created Service"
motd_ssh
customize
cleanup_lxc