Compare commits

..

6 Commits

Author SHA1 Message Date
29de8ba5f6 Update logo URL to use WebP format 2025-12-09 09:19:14 +01:00
e5d5615465 Add coolify (ct) 2025-12-09 08:17:46 +00:00
31c19bed09 Update CHANGELOG.md (#9788)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-09 00:13:26 +00:00
bff0650d72 Update versions.json (#9787)
Co-authored-by: GitHub Actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-09 01:13:01 +01:00
d9b05882a3 Update CHANGELOG.md (#9782)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-12-08 18:36:34 +00:00
31dbf2554c Tandoor: Remove postgres17-contrib package (#9781)
* Remove contrib

* Update

* Update

* Upda
2025-12-08 19:36:06 +01:00
18 changed files with 233 additions and 108 deletions

View File

@ -10,12 +10,18 @@
> [!CAUTION] > [!CAUTION]
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes. Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
## 2025-12-09
## 2025-12-08 ## 2025-12-08
### 🚀 Updated Scripts ### 🚀 Updated Scripts
- typo: tandoor instead of trandoor [@Neonize](https://github.com/Neonize) ([#9771](https://github.com/community-scripts/ProxmoxVE/pull/9771)) - typo: tandoor instead of trandoor [@Neonize](https://github.com/Neonize) ([#9771](https://github.com/community-scripts/ProxmoxVE/pull/9771))
- #### 🐞 Bug Fixes
- Tandoor: Remove postgres17-contrib package [@tremor021](https://github.com/tremor021) ([#9781](https://github.com/community-scripts/ProxmoxVE/pull/9781))
- #### ✨ New Features - #### ✨ New Features
- feat: Add var_gpu flag for GPU passthrough configuration [@MickLesk](https://github.com/MickLesk) ([#9764](https://github.com/community-scripts/ProxmoxVE/pull/9764)) - feat: Add var_gpu flag for GPU passthrough configuration [@MickLesk](https://github.com/MickLesk) ([#9764](https://github.com/community-scripts/ProxmoxVE/pull/9764))

46
ct/coolify.sh Normal file
View File

@ -0,0 +1,46 @@
#!/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://coolify.io/
APP="Coolify"
var_tags="${var_tags:-docker;paas}"
var_cpu="${var_cpu:-2}"
var_ram="${var_ram:-4096}"
var_disk="${var_disk:-30}"
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 /data/coolify ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
msg_info "Updating Coolify"
$STD bash <(curl -fsSL https://cdn.coollabs.io/coolify/install.sh)
msg_ok "Updated Coolify"
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}:8000${CL}"

View File

@ -55,7 +55,7 @@ function update_script() {
cd /opt/tandoor/vue3 cd /opt/tandoor/vue3
$STD yarn install $STD yarn install
$STD yarn build $STD yarn build
TANDOOR_VERSION="$(curl -fsSL https://api.github.com/repos/TandoorRecipes/recipes/releases/latest | jq -r .tag_name)" TANDOOR_VERSION=$(get_latest_github_release "TandoorRecipes/recipes")
cat <<EOF >/opt/tandoor/cookbook/version_info.py cat <<EOF >/opt/tandoor/cookbook/version_info.py
TANDOOR_VERSION = "$TANDOOR_VERSION" TANDOOR_VERSION = "$TANDOOR_VERSION"
TANDOOR_REF = "bare-metal" TANDOOR_REF = "bare-metal"

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 6880, "interface_port": 6880,
"documentation": "https://aria2.github.io/manual/en/html/index.html", "documentation": "https://aria2.github.io/manual/en/html/index.html",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 80, "interface_port": 80,
"documentation": "https://wiki.casaos.io/en/home", "documentation": "https://wiki.casaos.io/en/home",

View File

@ -0,0 +1,52 @@
{
"name": "Coolify",
"slug": "coolify",
"categories": [
6
],
"date_created": "2025-12-09",
"type": "ct",
"updateable": true,
"privileged": false,
"interface_port": 8000,
"documentation": "https://coolify.io/docs",
"config_path": "/data/coolify",
"website": "https://coolify.io/",
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/coolify.webp",
"description": "Coolify is an open-source & self-hostable alternative to Heroku, Netlify, and Vercel. It helps you manage your servers, applications, and databases on your own hardware with Docker. Deploy any application from Git repositories, Docker images, or use pre-built templates.",
"install_methods": [
{
"type": "default",
"script": "ct/coolify.sh",
"resources": {
"cpu": 2,
"ram": 4096,
"hdd": 30,
"os": "Debian",
"version": "13"
}
}
],
"default_credentials": {
"username": null,
"password": null
},
"notes": [
{
"text": "Initial setup will be done via the web interface on first access.",
"type": "info"
},
{
"text": "Coolify has built-in auto-updates. You can configure update frequency in Settings.",
"type": "info"
},
{
"text": "Coolify requires SSH access to manage deployments. SSH is enabled automatically.",
"type": "info"
},
{
"text": "This container uses Docker-in-Docker (nesting) for application deployments.",
"type": "warning"
}
]
}

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 8084, "interface_port": 8084,
"documentation": null, "documentation": null,

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 8081, "interface_port": 8081,
"documentation": "https://www.iobroker.net/#en/documentation", "documentation": "https://www.iobroker.net/#en/documentation",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2025-11-14", "date_created": "2025-11-14",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 80, "interface_port": 80,
"documentation": "https://docs.librenms.org/", "documentation": "https://docs.librenms.org/",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 80, "interface_port": 80,
"documentation": "https://ylianst.github.io/MeshCentral/", "documentation": "https://ylianst.github.io/MeshCentral/",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 4443, "interface_port": 4443,
"documentation": "https://docs.nextcloudpi.com/", "documentation": "https://docs.nextcloudpi.com/",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": null, "interface_port": null,
"documentation": "https://podman.io/docs", "documentation": "https://podman.io/docs",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 9999, "interface_port": 9999,
"documentation": null, "documentation": null,

View File

@ -1,8 +1,73 @@
[ [
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.5",
"date": "2025-10-24T11:12:22Z"
},
{
"name": "home-assistant/core",
"version": "2025.12.2",
"date": "2025-12-08T21:36:42Z"
},
{
"name": "BerriAI/litellm",
"version": "v1.80.9-nightly",
"date": "2025-12-08T21:21:07Z"
},
{
"name": "seerr-team/seerr",
"version": "preview-test-fix-subscriptions",
"date": "2025-12-08T21:16:05Z"
},
{
"name": "hansmi/prometheus-paperless-exporter",
"version": "v0.0.9",
"date": "2025-12-08T20:37:45Z"
},
{
"name": "influxdata/telegraf",
"version": "v1.37.0",
"date": "2025-12-08T20:36:16Z"
},
{
"name": "pommee/goaway",
"version": "v0.62.23",
"date": "2025-12-08T20:30:54Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.123.4",
"date": "2025-12-08T13:30:40Z"
},
{
"name": "steveiliop56/tinyauth",
"version": "v4.1.0",
"date": "2025-11-23T12:13:34Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.45.3",
"date": "2025-12-08T16:11:16Z"
},
{
"name": "AdguardTeam/AdGuardHome",
"version": "v0.107.71",
"date": "2025-12-08T14:34:55Z"
},
{
"name": "chrisbenincasa/tunarr",
"version": "v0.22.18",
"date": "2025-12-08T14:26:24Z"
},
{ {
"name": "openobserve/openobserve", "name": "openobserve/openobserve",
"version": "v0.30.0-rc1", "version": "v0.30.0-rc1",
"date": "2025-12-08T11:46:24Z" "date": "2025-12-08T13:29:14Z"
},
{
"name": "wavelog/wavelog",
"version": "2.2.1",
"date": "2025-12-08T12:01:34Z"
}, },
{ {
"name": "ventoy/Ventoy", "name": "ventoy/Ventoy",
@ -44,6 +109,11 @@
"version": "v0.24.420", "version": "v0.24.420",
"date": "2025-12-08T05:55:34Z" "date": "2025-12-08T05:55:34Z"
}, },
{
"name": "ollama/ollama",
"version": "v0.13.2-rc2",
"date": "2025-12-06T00:10:33Z"
},
{ {
"name": "firefly-iii/firefly-iii", "name": "firefly-iii/firefly-iii",
"version": "v6.4.9", "version": "v6.4.9",
@ -54,21 +124,11 @@
"version": "v2.2.0", "version": "v2.2.0",
"date": "2025-12-08T03:33:34Z" "date": "2025-12-08T03:33:34Z"
}, },
{
"name": "chrisbenincasa/tunarr",
"version": "v0.23.0-alpha.31",
"date": "2025-12-08T02:39:59Z"
},
{ {
"name": "jeedom/core", "name": "jeedom/core",
"version": "4.5", "version": "4.5",
"date": "2025-12-08T00:27:05Z" "date": "2025-12-08T00:27:05Z"
}, },
{
"name": "steveiliop56/tinyauth",
"version": "v4.1.0",
"date": "2025-11-23T12:13:34Z"
},
{ {
"name": "maxdorninger/MediaManager", "name": "maxdorninger/MediaManager",
"version": "v1.10.0", "version": "v1.10.0",
@ -89,21 +149,11 @@
"version": "26.4.7", "version": "26.4.7",
"date": "2025-12-01T08:14:11Z" "date": "2025-12-01T08:14:11Z"
}, },
{
"name": "seerr-team/seerr",
"version": "preview-test-fix-subscriptions",
"date": "2025-12-07T14:31:55Z"
},
{ {
"name": "bluenviron/mediamtx", "name": "bluenviron/mediamtx",
"version": "v1.15.5", "version": "v1.15.5",
"date": "2025-12-07T12:24:21Z" "date": "2025-12-07T12:24:21Z"
}, },
{
"name": "BerriAI/litellm",
"version": "v1.80.8.rc.1",
"date": "2025-12-07T01:36:40Z"
},
{ {
"name": "umami-software/umami", "name": "umami-software/umami",
"version": "v2.20.1", "version": "v2.20.1",
@ -174,31 +224,11 @@
"version": "v13.1.3", "version": "v13.1.3",
"date": "2025-12-06T04:40:09Z" "date": "2025-12-06T04:40:09Z"
}, },
{
"name": "ollama/ollama",
"version": "v0.13.2-rc1",
"date": "2025-12-04T23:19:06Z"
},
{ {
"name": "Stirling-Tools/Stirling-PDF", "name": "Stirling-Tools/Stirling-PDF",
"version": "v2.1.1", "version": "v2.1.1",
"date": "2025-12-05T23:48:08Z" "date": "2025-12-05T23:48:08Z"
}, },
{
"name": "home-assistant/core",
"version": "2025.12.1",
"date": "2025-12-05T21:10:31Z"
},
{
"name": "n8n-io/n8n",
"version": "n8n@1.122.5",
"date": "2025-12-04T14:09:39Z"
},
{
"name": "homarr-labs/homarr",
"version": "v1.45.2",
"date": "2025-12-05T19:17:09Z"
},
{ {
"name": "booklore-app/booklore", "name": "booklore-app/booklore",
"version": "v1.13.2", "version": "v1.13.2",
@ -264,11 +294,6 @@
"version": "v1.30.20", "version": "v1.30.20",
"date": "2025-12-04T18:17:47Z" "date": "2025-12-04T18:17:47Z"
}, },
{
"name": "AdguardTeam/AdGuardHome",
"version": "v0.107.70",
"date": "2025-12-03T16:12:15Z"
},
{ {
"name": "wazuh/wazuh", "name": "wazuh/wazuh",
"version": "coverity-w49-4.14.2", "version": "coverity-w49-4.14.2",
@ -367,7 +392,7 @@
{ {
"name": "mealie-recipes/mealie", "name": "mealie-recipes/mealie",
"version": "v3.6.1", "version": "v3.6.1",
"date": "2025-12-02T22:54:10Z" "date": "2025-12-02T23:08:41Z"
}, },
{ {
"name": "apache/tomcat", "name": "apache/tomcat",
@ -539,11 +564,6 @@
"version": "v11.8.2", "version": "v11.8.2",
"date": "2025-11-30T08:39:28Z" "date": "2025-11-30T08:39:28Z"
}, },
{
"name": "pommee/goaway",
"version": "v0.62.20",
"date": "2025-11-30T06:51:31Z"
},
{ {
"name": "MediaBrowser/Emby.Releases", "name": "MediaBrowser/Emby.Releases",
"version": "4.9.1.90", "version": "4.9.1.90",
@ -699,11 +719,6 @@
"version": "v1.18.0", "version": "v1.18.0",
"date": "2025-11-23T17:42:53Z" "date": "2025-11-23T17:42:53Z"
}, },
{
"name": "wavelog/wavelog",
"version": "2.2",
"date": "2025-11-23T17:32:38Z"
},
{ {
"name": "crafty-controller/crafty-4", "name": "crafty-controller/crafty-4",
"version": "v4.6.1", "version": "v4.6.1",
@ -744,11 +759,6 @@
"version": "5.2.4", "version": "5.2.4",
"date": "2025-11-21T10:25:05Z" "date": "2025-11-21T10:25:05Z"
}, },
{
"name": "sabnzbd/sabnzbd",
"version": "4.5.5",
"date": "2025-10-24T11:12:22Z"
},
{ {
"name": "MariaDB/server", "name": "MariaDB/server",
"version": "mariadb-12.1.2", "version": "mariadb-12.1.2",
@ -839,11 +849,6 @@
"version": "v0.28.2", "version": "v0.28.2",
"date": "2025-11-18T05:51:46Z" "date": "2025-11-18T05:51:46Z"
}, },
{
"name": "influxdata/telegraf",
"version": "v1.36.4",
"date": "2025-11-17T17:15:29Z"
},
{ {
"name": "rabbitmq/rabbitmq-server", "name": "rabbitmq/rabbitmq-server",
"version": "v4.2.1", "version": "v4.2.1",
@ -1364,11 +1369,6 @@
"version": "v1.13.0", "version": "v1.13.0",
"date": "2025-05-25T20:21:13Z" "date": "2025-05-25T20:21:13Z"
}, },
{
"name": "hansmi/prometheus-paperless-exporter",
"version": "v0.0.8",
"date": "2025-05-18T11:37:31Z"
},
{ {
"name": "stackblitz-labs/bolt.diy", "name": "stackblitz-labs/bolt.diy",
"version": "1.0.0", "version": "1.0.0",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2025-03-24", "date_created": "2025-03-24",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 443, "interface_port": 443,
"documentation": "https://documentation.wazuh.com/", "documentation": "https://documentation.wazuh.com/",

View File

@ -6,7 +6,7 @@
], ],
"date_created": "2024-05-02", "date_created": "2024-05-02",
"type": "ct", "type": "ct",
"updateable": true, "updateable": false,
"privileged": false, "privileged": false,
"interface_port": 6969, "interface_port": 6969,
"documentation": "https://wiki.servarr.com/en/whisparr", "documentation": "https://wiki.servarr.com/en/whisparr",

View File

@ -0,0 +1,39 @@
#!/bin/bash
# Copyright (c) 2021-2025 community-scripts ORG
# Author: MickLesk (CanbiZ)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://coolify.io/
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 \
git \
openssl
msg_ok "Installed Dependencies"
msg_warn "WARNING: This script will run an external installer from a third-party source (https://coolify.io/)."
msg_warn "The following code is NOT maintained or audited by our repository."
msg_warn "If you have any doubts or concerns, please review the installer code before proceeding:"
msg_custom "${TAB3}${GATEWAY}${BGN}${CL}" "\e[1;34m" "→ https://cdn.coollabs.io/coolify/install.sh"
echo
read -r -p "${TAB3}Do you want to continue? [y/N]: " CONFIRM
if [[ ! "$CONFIRM" =~ ^([yY][eE][sS]|[yY])$ ]]; then
msg_error "Aborted by user. No changes have been made."
exit 10
fi
msg_info "Installing Coolify (Patience - this installs Docker and pulls containers)"
$STD bash <(curl -fsSL https://cdn.coollabs.io/coolify/install.sh)
msg_ok "Installed Coolify"
motd_ssh
customize
cleanup_lxc

View File

@ -32,28 +32,10 @@ msg_ok "Installed Dependencies"
NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs NODE_VERSION="22" NODE_MODULE="yarn" setup_nodejs
fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor" fetch_and_deploy_gh_release "tandoor" "TandoorRecipes/recipes" "tarball" "latest" "/opt/tandoor"
PG_VERSION="17" PG_MODULES="contrib" setup_postgresql PG_VERSION="17" setup_postgresql
PYTHON_VERSION="3.13" setup_uv PYTHON_VERSION="3.13" setup_uv
PG_DB_USER="tandoor" PG_DB_NAME="db_recipes" PG_DB_EXTENSIONS="unaccent,pg_trgm" setup_postgresql_db
msg_info "Set up PostgreSQL Database"
DB_NAME=db_recipes
DB_USER=tandoor
SECRET_KEY=$(openssl rand -base64 45 | sed 's/\//\\\//g') SECRET_KEY=$(openssl rand -base64 45 | sed 's/\//\\\//g')
DB_PASS="$(openssl rand -base64 18 | 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 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'"
$STD sudo -u postgres psql -d "$DB_NAME" -c "CREATE EXTENSION IF NOT EXISTS unaccent;"
$STD sudo -u postgres psql -d "$DB_NAME" -c "CREATE EXTENSION IF NOT EXISTS pg_trgm;"
{
echo "Tandoor-Credentials"
echo "Tandoor Database Name: $DB_NAME"
echo "Tandoor Database User: $DB_USER"
echo "Tandoor Database Password: $DB_PASS"
} >>~/tandoor.creds
msg_ok "Set up PostgreSQL Database"
msg_info "Setup Tandoor" msg_info "Setup Tandoor"
mkdir -p /opt/tandoor/{config,api,mediafiles,staticfiles} mkdir -p /opt/tandoor/{config,api,mediafiles,staticfiles}
@ -69,16 +51,16 @@ TZ=Europe/Berlin
DB_ENGINE=django.db.backends.postgresql DB_ENGINE=django.db.backends.postgresql
POSTGRES_HOST=localhost POSTGRES_HOST=localhost
POSTGRES_DB=$DB_NAME POSTGRES_DB=$PG_DB_NAME
POSTGRES_PORT=5432 POSTGRES_PORT=5432
POSTGRES_USER=$DB_USER POSTGRES_USER=$PG_DB_USER
POSTGRES_PASSWORD=$DB_PASS POSTGRES_PASSWORD=$PG_DB_PASS
STATIC_URL=/staticfiles/ STATIC_URL=/staticfiles/
MEDIA_URL=/media/ MEDIA_URL=/media/
EOF EOF
TANDOOR_VERSION="$(curl -s https://api.github.com/repos/TandoorRecipes/recipes/releases/latest | jq -r .tag_name)" TANDOOR_VERSION=$(get_latest_github_release "TandoorRecipes/recipes")
cat <<EOF >/opt/tandoor/cookbook/version_info.py cat <<EOF >/opt/tandoor/cookbook/version_info.py
TANDOOR_VERSION = "$TANDOOR_VERSION" TANDOOR_VERSION = "$TANDOOR_VERSION"
TANDOOR_REF = "bare-metal" TANDOOR_REF = "bare-metal"