mirror of
https://github.com/community-scripts/ProxmoxVE.git
synced 2025-12-14 19:23:32 +01:00
Compare commits
15 Commits
2025-12-08
...
add-script
| Author | SHA1 | Date | |
|---|---|---|---|
| 11cbf1b986 | |||
| 7a1e71af62 | |||
| e3a201db02 | |||
| 721ed4ad1a | |||
| bf6fdb43d9 | |||
| 5cc1eae0d2 | |||
| 1c175eb012 | |||
| f6f131efab | |||
| e4d5ce221b | |||
| 4e182bd5b9 | |||
| 12a7ecd85d | |||
| b658959c7b | |||
| 5eb9d2bcdf | |||
| 7d37743981 | |||
| b0e7cdfe13 |
@ -12,6 +12,15 @@ Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit
|
||||
|
||||
## 2025-12-09
|
||||
|
||||
### 🆕 New Scripts
|
||||
|
||||
- Dokploy ([#9793](https://github.com/community-scripts/ProxmoxVE/pull/9793))
|
||||
- Coolify ([#9792](https://github.com/community-scripts/ProxmoxVE/pull/9792))
|
||||
|
||||
### 📚 Documentation
|
||||
|
||||
- fixed grammar on alert that pops up when you copy the curl command [@Sarthak-Sidhant](https://github.com/Sarthak-Sidhant) ([#9799](https://github.com/community-scripts/ProxmoxVE/pull/9799))
|
||||
|
||||
## 2025-12-08
|
||||
|
||||
### 🚀 Updated Scripts
|
||||
|
||||
46
ct/coolify.sh
Normal file
46
ct/coolify.sh
Normal 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}"
|
||||
46
ct/dokploy.sh
Normal file
46
ct/dokploy.sh
Normal 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://dokploy.com/
|
||||
|
||||
APP="Dokploy"
|
||||
var_tags="${var_tags:-docker;paas}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
var_disk="${var_disk:-10}"
|
||||
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 /etc/dokploy ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
msg_info "Updating Dokploy"
|
||||
$STD bash <(curl -sSL https://dokploy.com/install.sh)
|
||||
msg_ok "Updated Dokploy"
|
||||
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}:3000${CL}"
|
||||
6
ct/headers/coolify
Normal file
6
ct/headers/coolify
Normal file
@ -0,0 +1,6 @@
|
||||
______ ___ ____
|
||||
/ ____/___ ____ / (_) __/_ __
|
||||
/ / / __ \/ __ \/ / / /_/ / / /
|
||||
/ /___/ /_/ / /_/ / / / __/ /_/ /
|
||||
\____/\____/\____/_/_/_/ \__, /
|
||||
/____/
|
||||
6
ct/headers/dokploy
Normal file
6
ct/headers/dokploy
Normal file
@ -0,0 +1,6 @@
|
||||
____ __ __
|
||||
/ __ \____ / /______ / /___ __ __
|
||||
/ / / / __ \/ //_/ __ \/ / __ \/ / / /
|
||||
/ /_/ / /_/ / ,< / /_/ / / /_/ / /_/ /
|
||||
/_____/\____/_/|_/ .___/_/\____/\__, /
|
||||
/_/ /____/
|
||||
6
ct/headers/speedtest-tracker
Normal file
6
ct/headers/speedtest-tracker
Normal file
@ -0,0 +1,6 @@
|
||||
_____ ____ __ ______ __
|
||||
/ ___/____ ___ ___ ____/ / /____ _____/ /_ /_ __/________ ______/ /_____ _____
|
||||
\__ \/ __ \/ _ \/ _ \/ __ / __/ _ \/ ___/ __/_____/ / / ___/ __ `/ ___/ //_/ _ \/ ___/
|
||||
___/ / /_/ / __/ __/ /_/ / /_/ __(__ ) /_/_____/ / / / / /_/ / /__/ ,< / __/ /
|
||||
/____/ .___/\___/\___/\__,_/\__/\___/____/\__/ /_/ /_/ \__,_/\___/_/|_|\___/_/
|
||||
/_/
|
||||
83
ct/speedtest-tracker.sh
Normal file
83
ct/speedtest-tracker.sh
Normal file
@ -0,0 +1,83 @@
|
||||
#!/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: AlphaLawless
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/alexjustesen/speedtest-tracker
|
||||
|
||||
APP="Speedtest-Tracker"
|
||||
var_tags="${var_tags:-monitoring}"
|
||||
var_cpu="${var_cpu:-2}"
|
||||
var_ram="${var_ram:-2048}"
|
||||
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 [[ ! -d /opt/speedtest-tracker ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
|
||||
if check_for_gh_release "speedtest-tracker" "alexjustesen/speedtest-tracker"; then
|
||||
PHP_VERSION="8.4" PHP_FPM="YES" PHP_MODULE="common,sqlite3,redis" setup_php
|
||||
setup_composer
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
|
||||
msg_info "Stopping Service"
|
||||
systemctl stop speedtest-tracker
|
||||
msg_ok "Stopped Service"
|
||||
|
||||
msg_info "Updating Speedtest CLI"
|
||||
$STD apt update
|
||||
$STD apt --only-upgrade install -y speedtest
|
||||
msg_ok "Updated Speedtest CLI"
|
||||
|
||||
msg_info "Creating Backup"
|
||||
cp -r /opt/speedtest-tracker /opt/speedtest-tracker-backup
|
||||
msg_ok "Backup Created"
|
||||
|
||||
fetch_and_deploy_gh_release "speedtest-tracker" "alexjustesen/speedtest-tracker" "tarball" "latest" "/opt/speedtest-tracker"
|
||||
|
||||
msg_info "Updating Speedtest Tracker"
|
||||
cp -r /opt/speedtest-tracker-backup/.env /opt/speedtest-tracker/.env
|
||||
cd /opt/speedtest-tracker
|
||||
export COMPOSER_ALLOW_SUPERUSER=1
|
||||
$STD composer install --optimize-autoloader --no-dev
|
||||
$STD npm ci
|
||||
$STD npm run build
|
||||
$STD php artisan migrate --force
|
||||
$STD php artisan config:clear
|
||||
$STD php artisan cache:clear
|
||||
$STD php artisan view:clear
|
||||
chown -R www-data:www-data /opt/speedtest-tracker
|
||||
chmod -R 755 /opt/speedtest-tracker/storage
|
||||
chmod -R 755 /opt/speedtest-tracker/bootstrap/cache
|
||||
msg_ok "Updated Speedtest Tracker"
|
||||
|
||||
msg_info "Starting Service"
|
||||
systemctl start speedtest-tracker
|
||||
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}${CL}"
|
||||
52
frontend/public/json/coolify.json
Normal file
52
frontend/public/json/coolify.json
Normal 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"
|
||||
}
|
||||
]
|
||||
}
|
||||
48
frontend/public/json/dokploy.json
Normal file
48
frontend/public/json/dokploy.json
Normal file
@ -0,0 +1,48 @@
|
||||
{
|
||||
"name": "Dokploy",
|
||||
"slug": "dokploy",
|
||||
"categories": [
|
||||
6
|
||||
],
|
||||
"date_created": "2025-12-09",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 3000,
|
||||
"documentation": "https://docs.dokploy.com/",
|
||||
"config_path": "/etc/dokploy",
|
||||
"website": "https://dokploy.com/",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons/png/dokploy.png",
|
||||
"description": "Dokploy is a free, self-hostable Platform as a Service (PaaS) that simplifies the deployment and management of applications and databases. Built with Docker and Traefik, it offers features like automatic SSL, Docker Compose support, database backups, and a real-time monitoring dashboard.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/dokploy.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 2048,
|
||||
"hdd": 10,
|
||||
"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": "Dokploy has built-in auto-updates via the web interface.",
|
||||
"type": "info"
|
||||
},
|
||||
{
|
||||
"text": "This container uses Docker-in-Docker (nesting) for application deployments.",
|
||||
"type": "warning"
|
||||
}
|
||||
]
|
||||
}
|
||||
35
frontend/public/json/speedtest-tracker.json
Normal file
35
frontend/public/json/speedtest-tracker.json
Normal file
@ -0,0 +1,35 @@
|
||||
{
|
||||
"name": "Speedtest-Tracker",
|
||||
"slug": "speedtest-tracker",
|
||||
"categories": [
|
||||
4
|
||||
],
|
||||
"date_created": "2025-12-09",
|
||||
"type": "ct",
|
||||
"updateable": true,
|
||||
"privileged": false,
|
||||
"interface_port": 80,
|
||||
"documentation": "https://docs.speedtest-tracker.dev/",
|
||||
"website": "https://github.com/alexjustesen/speedtest-tracker",
|
||||
"logo": "https://cdn.jsdelivr.net/gh/selfhst/icons@main/webp/speedtest-tracker.webp",
|
||||
"config_path": "/opt/speedtest-tracker/.env",
|
||||
"description": "Speedtest Tracker is a self-hosted application that runs scheduled speed tests using the Ookla Speedtest CLI and saves the results to a database for historical tracking and visualization.",
|
||||
"install_methods": [
|
||||
{
|
||||
"type": "default",
|
||||
"script": "ct/speedtest-tracker.sh",
|
||||
"resources": {
|
||||
"cpu": 2,
|
||||
"ram": 2048,
|
||||
"hdd": 4,
|
||||
"os": "debian",
|
||||
"version": "13"
|
||||
}
|
||||
}
|
||||
],
|
||||
"default_credentials": {
|
||||
"username": "admin@example.com",
|
||||
"password": "password"
|
||||
},
|
||||
"notes": []
|
||||
}
|
||||
@ -1,4 +1,84 @@
|
||||
[
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-typescript@4.0.14",
|
||||
"date": "2025-12-09T11:11:49Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
"version": "v2.2.6",
|
||||
"date": "2025-12-09T10:11:01Z"
|
||||
},
|
||||
{
|
||||
"name": "Infisical/infisical",
|
||||
"version": "v0.154.5",
|
||||
"date": "2025-12-09T09:02:17Z"
|
||||
},
|
||||
{
|
||||
"name": "mayanayza/netvisor",
|
||||
"version": "v0.11.4",
|
||||
"date": "2025-12-09T06:28:33Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-09-20T12:12:33Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.24.425",
|
||||
"date": "2025-12-09T05:59:35Z"
|
||||
},
|
||||
{
|
||||
"name": "mongodb/mongo",
|
||||
"version": "r7.0.27-rc0",
|
||||
"date": "2025-12-09T04:34:48Z"
|
||||
},
|
||||
{
|
||||
"name": "ollama/ollama",
|
||||
"version": "v0.13.2",
|
||||
"date": "2025-12-08T05:49:52Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.80.9.dev1",
|
||||
"date": "2025-12-09T01:38:18Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.5",
|
||||
"date": "2025-12-09T00:27:10Z"
|
||||
},
|
||||
{
|
||||
"name": "steveiliop56/tinyauth",
|
||||
"version": "v4.1.0",
|
||||
"date": "2025-11-23T12:13:34Z"
|
||||
},
|
||||
{
|
||||
"name": "alexta69/metube",
|
||||
"version": "2025.12.09",
|
||||
"date": "2025-12-09T00:16:11Z"
|
||||
},
|
||||
{
|
||||
"name": "Dispatcharr/Dispatcharr",
|
||||
"version": "v0.14.0",
|
||||
"date": "2025-12-09T00:04:09Z"
|
||||
},
|
||||
{
|
||||
"name": "metabase/metabase",
|
||||
"version": "v0.57.x",
|
||||
"date": "2025-12-08T23:18:26Z"
|
||||
},
|
||||
{
|
||||
"name": "seerr-team/seerr",
|
||||
"version": "preview-test-fix-subscriptions",
|
||||
"date": "2025-12-08T23:15:30Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.4.7",
|
||||
"date": "2025-12-01T08:14:11Z"
|
||||
},
|
||||
{
|
||||
"name": "sabnzbd/sabnzbd",
|
||||
"version": "4.5.5",
|
||||
@ -10,14 +90,14 @@
|
||||
"date": "2025-12-08T21:36:42Z"
|
||||
},
|
||||
{
|
||||
"name": "BerriAI/litellm",
|
||||
"version": "v1.80.9-nightly",
|
||||
"date": "2025-12-08T21:21:07Z"
|
||||
"name": "fosrl/pangolin",
|
||||
"version": "1.13.0-rc.0",
|
||||
"date": "2025-12-08T21:17:44Z"
|
||||
},
|
||||
{
|
||||
"name": "seerr-team/seerr",
|
||||
"version": "preview-test-fix-subscriptions",
|
||||
"date": "2025-12-08T21:16:05Z"
|
||||
"name": "Dokploy/dokploy",
|
||||
"version": "v0.26.0",
|
||||
"date": "2025-12-08T20:44:09Z"
|
||||
},
|
||||
{
|
||||
"name": "hansmi/prometheus-paperless-exporter",
|
||||
@ -34,21 +114,31 @@
|
||||
"version": "v0.62.23",
|
||||
"date": "2025-12-08T20:30:54Z"
|
||||
},
|
||||
{
|
||||
"name": "TuroYT/snowshare",
|
||||
"version": "v1.1.2",
|
||||
"date": "2025-12-08T20:29:51Z"
|
||||
},
|
||||
{
|
||||
"name": "coollabsio/coolify",
|
||||
"version": "v4.0.0-beta.453",
|
||||
"date": "2025-12-08T20:23:48Z"
|
||||
},
|
||||
{
|
||||
"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": "joaovitoriasilva/endurain",
|
||||
"version": "v0.16.0-RC2",
|
||||
"date": "2025-12-08T15:54:38Z"
|
||||
},
|
||||
{
|
||||
"name": "AdguardTeam/AdGuardHome",
|
||||
"version": "v0.107.71",
|
||||
@ -69,6 +159,11 @@
|
||||
"version": "2.2.1",
|
||||
"date": "2025-12-08T12:01:34Z"
|
||||
},
|
||||
{
|
||||
"name": "fccview/jotty",
|
||||
"version": "1.12.1",
|
||||
"date": "2025-12-08T11:59:19Z"
|
||||
},
|
||||
{
|
||||
"name": "ventoy/Ventoy",
|
||||
"version": "v1.1.08",
|
||||
@ -99,41 +194,21 @@
|
||||
"version": "v25.4",
|
||||
"date": "2025-10-09T10:27:01Z"
|
||||
},
|
||||
{
|
||||
"name": "morpheus65535/bazarr",
|
||||
"version": "v1.5.3",
|
||||
"date": "2025-09-20T12:12:33Z"
|
||||
},
|
||||
{
|
||||
"name": "Jackett/Jackett",
|
||||
"version": "v0.24.420",
|
||||
"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",
|
||||
"version": "v6.4.9",
|
||||
"date": "2025-11-28T20:36:20Z"
|
||||
},
|
||||
{
|
||||
"name": "documenso/documenso",
|
||||
"version": "v2.2.0",
|
||||
"date": "2025-12-08T03:33:34Z"
|
||||
},
|
||||
{
|
||||
"name": "jeedom/core",
|
||||
"version": "4.5",
|
||||
"date": "2025-12-08T00:27:05Z"
|
||||
},
|
||||
{
|
||||
"name": "maxdorninger/MediaManager",
|
||||
"version": "v1.10.0",
|
||||
"date": "2025-12-07T23:41:51Z"
|
||||
},
|
||||
{
|
||||
"name": "nickheyer/discopanel",
|
||||
"version": "v1.0.12-dev",
|
||||
"date": "2025-12-07T22:56:11Z"
|
||||
},
|
||||
{
|
||||
"name": "Part-DB/Part-DB-server",
|
||||
"version": "v2.3.0",
|
||||
@ -144,16 +219,21 @@
|
||||
"version": "v6.11.1",
|
||||
"date": "2025-12-07T19:19:08Z"
|
||||
},
|
||||
{
|
||||
"name": "keycloak/keycloak",
|
||||
"version": "26.4.7",
|
||||
"date": "2025-12-01T08:14:11Z"
|
||||
},
|
||||
{
|
||||
"name": "bluenviron/mediamtx",
|
||||
"version": "v1.15.5",
|
||||
"date": "2025-12-07T12:24:21Z"
|
||||
},
|
||||
{
|
||||
"name": "livebook-dev/livebook",
|
||||
"version": "v0.18.1",
|
||||
"date": "2025-12-07T11:35:51Z"
|
||||
},
|
||||
{
|
||||
"name": "ghostfolio/ghostfolio",
|
||||
"version": "2.222.0",
|
||||
"date": "2025-12-07T09:09:47Z"
|
||||
},
|
||||
{
|
||||
"name": "umami-software/umami",
|
||||
"version": "v2.20.1",
|
||||
@ -190,9 +270,9 @@
|
||||
"date": "2025-12-06T14:31:36Z"
|
||||
},
|
||||
{
|
||||
"name": "fuma-nama/fumadocs",
|
||||
"version": "fumadocs-openapi@10.1.1",
|
||||
"date": "2025-12-06T11:27:58Z"
|
||||
"name": "prometheus/blackbox_exporter",
|
||||
"version": "v0.28.0",
|
||||
"date": "2025-12-06T13:32:18Z"
|
||||
},
|
||||
{
|
||||
"name": "YunoHost/yunohost",
|
||||
@ -229,6 +309,11 @@
|
||||
"version": "v2.1.1",
|
||||
"date": "2025-12-05T23:48:08Z"
|
||||
},
|
||||
{
|
||||
"name": "HydroshieldMKII/Guardian",
|
||||
"version": "v1.3.1",
|
||||
"date": "2025-12-05T19:12:48Z"
|
||||
},
|
||||
{
|
||||
"name": "booklore-app/booklore",
|
||||
"version": "v1.13.2",
|
||||
@ -239,6 +324,11 @@
|
||||
"version": "v1.92.1",
|
||||
"date": "2025-12-05T15:53:22Z"
|
||||
},
|
||||
{
|
||||
"name": "community-scripts/ProxmoxVE-Local",
|
||||
"version": "v0.5.2",
|
||||
"date": "2025-12-05T15:13:46Z"
|
||||
},
|
||||
{
|
||||
"name": "FlowiseAI/Flowise",
|
||||
"version": "flowise@3.0.12",
|
||||
@ -265,9 +355,9 @@
|
||||
"date": "2025-12-05T09:58:17Z"
|
||||
},
|
||||
{
|
||||
"name": "alexta69/metube",
|
||||
"version": "2025.12.05",
|
||||
"date": "2025-12-05T09:45:02Z"
|
||||
"name": "alam00000/bentopdf",
|
||||
"version": "v1.10.5",
|
||||
"date": "2025-12-05T09:28:50Z"
|
||||
},
|
||||
{
|
||||
"name": "esphome/esphome",
|
||||
@ -299,6 +389,11 @@
|
||||
"version": "coverity-w49-4.14.2",
|
||||
"date": "2025-12-02T14:01:48Z"
|
||||
},
|
||||
{
|
||||
"name": "valkey-io/valkey",
|
||||
"version": "8.1.5",
|
||||
"date": "2025-12-04T15:26:01Z"
|
||||
},
|
||||
{
|
||||
"name": "crowdsecurity/crowdsec",
|
||||
"version": "v1.7.4",
|
||||
@ -309,6 +404,11 @@
|
||||
"version": "v0.34.2",
|
||||
"date": "2025-12-04T13:08:18Z"
|
||||
},
|
||||
{
|
||||
"name": "qdrant/qdrant",
|
||||
"version": "v1.16.2",
|
||||
"date": "2025-12-04T11:03:49Z"
|
||||
},
|
||||
{
|
||||
"name": "glpi-project/glpi",
|
||||
"version": "11.0.4",
|
||||
@ -379,6 +479,11 @@
|
||||
"version": "v0.104.0",
|
||||
"date": "2025-12-03T06:48:38Z"
|
||||
},
|
||||
{
|
||||
"name": "comfyanonymous/ComfyUI",
|
||||
"version": "v0.3.77",
|
||||
"date": "2025-12-03T05:02:09Z"
|
||||
},
|
||||
{
|
||||
"name": "hyperion-project/hyperion.ng",
|
||||
"version": "2.1.1",
|
||||
@ -392,7 +497,7 @@
|
||||
{
|
||||
"name": "mealie-recipes/mealie",
|
||||
"version": "v3.6.1",
|
||||
"date": "2025-12-02T23:08:41Z"
|
||||
"date": "2025-12-02T22:54:10Z"
|
||||
},
|
||||
{
|
||||
"name": "apache/tomcat",
|
||||
@ -484,6 +589,11 @@
|
||||
"version": "v0.16.0",
|
||||
"date": "2025-12-01T21:35:19Z"
|
||||
},
|
||||
{
|
||||
"name": "martabal/qbittorrent-exporter",
|
||||
"version": "v1.13.0",
|
||||
"date": "2025-12-01T21:06:38Z"
|
||||
},
|
||||
{
|
||||
"name": "slskd/slskd",
|
||||
"version": "0.24.1",
|
||||
@ -509,6 +619,11 @@
|
||||
"version": "0.211.0",
|
||||
"date": "2025-12-01T11:22:11Z"
|
||||
},
|
||||
{
|
||||
"name": "opencloud-eu/opencloud",
|
||||
"version": "v4.0.0",
|
||||
"date": "2025-12-01T09:33:08Z"
|
||||
},
|
||||
{
|
||||
"name": "cockpit-project/cockpit",
|
||||
"version": "310.6",
|
||||
@ -689,6 +804,11 @@
|
||||
"version": "v0.25.3",
|
||||
"date": "2025-11-25T15:40:41Z"
|
||||
},
|
||||
{
|
||||
"name": "LimeSurvey/LimeSurvey",
|
||||
"version": "6.16.0+251120",
|
||||
"date": "2025-11-25T14:21:59Z"
|
||||
},
|
||||
{
|
||||
"name": "TandoorRecipes/recipes",
|
||||
"version": "2.3.6",
|
||||
@ -724,6 +844,11 @@
|
||||
"version": "v4.6.1",
|
||||
"date": "2025-11-23T16:42:50Z"
|
||||
},
|
||||
{
|
||||
"name": "dedicatedcode/reitti",
|
||||
"version": "v2.5.0",
|
||||
"date": "2025-11-23T12:49:50Z"
|
||||
},
|
||||
{
|
||||
"name": "go-gitea/gitea",
|
||||
"version": "v1.25.2",
|
||||
@ -829,6 +954,11 @@
|
||||
"version": "v7.5.0",
|
||||
"date": "2025-11-19T08:36:29Z"
|
||||
},
|
||||
{
|
||||
"name": "PatchMon/PatchMon",
|
||||
"version": "v1.3.6",
|
||||
"date": "2025-11-18T22:01:02Z"
|
||||
},
|
||||
{
|
||||
"name": "redis/redis",
|
||||
"version": "8.4.0",
|
||||
@ -839,6 +969,11 @@
|
||||
"version": "v2.13.5",
|
||||
"date": "2025-11-18T11:47:48Z"
|
||||
},
|
||||
{
|
||||
"name": "Hosteroid/domain-monitor",
|
||||
"version": "v1.1.1",
|
||||
"date": "2025-11-18T11:32:30Z"
|
||||
},
|
||||
{
|
||||
"name": "PCJones/UmlautAdaptarr",
|
||||
"version": "v0.7.5",
|
||||
@ -849,6 +984,16 @@
|
||||
"version": "v0.28.2",
|
||||
"date": "2025-11-18T05:51:46Z"
|
||||
},
|
||||
{
|
||||
"name": "passbolt/passbolt_api",
|
||||
"version": "v5.7.2",
|
||||
"date": "2025-11-17T15:17:55Z"
|
||||
},
|
||||
{
|
||||
"name": "librenms/librenms",
|
||||
"version": "25.11.0",
|
||||
"date": "2025-11-17T13:29:57Z"
|
||||
},
|
||||
{
|
||||
"name": "rabbitmq/rabbitmq-server",
|
||||
"version": "v4.2.1",
|
||||
@ -894,6 +1039,11 @@
|
||||
"version": "4.10.1",
|
||||
"date": "2025-11-15T04:36:48Z"
|
||||
},
|
||||
{
|
||||
"name": "Lissy93/domain-locker",
|
||||
"version": "v0.1.2",
|
||||
"date": "2025-11-14T22:08:23Z"
|
||||
},
|
||||
{
|
||||
"name": "runtipi/runtipi",
|
||||
"version": "v4.6.5",
|
||||
@ -909,6 +1059,11 @@
|
||||
"version": "v1.0.25",
|
||||
"date": "2025-11-12T16:57:54Z"
|
||||
},
|
||||
{
|
||||
"name": "jason5ng32/MyIP",
|
||||
"version": "v5.1.0",
|
||||
"date": "2025-11-12T10:44:24Z"
|
||||
},
|
||||
{
|
||||
"name": "moghtech/komodo",
|
||||
"version": "v1.19.5",
|
||||
@ -964,6 +1119,11 @@
|
||||
"version": "v4.52.0",
|
||||
"date": "2025-11-06T22:39:26Z"
|
||||
},
|
||||
{
|
||||
"name": "deuxfleurs-org/garage",
|
||||
"version": "v1.99.3-internal",
|
||||
"date": "2025-11-06T17:27:21Z"
|
||||
},
|
||||
{
|
||||
"name": "Notifiarr/notifiarr",
|
||||
"version": "v0.9.1",
|
||||
@ -989,6 +1149,11 @@
|
||||
"version": "1.5.0",
|
||||
"date": "2025-11-05T11:10:20Z"
|
||||
},
|
||||
{
|
||||
"name": "SonarSource/sonarqube",
|
||||
"version": "25.11.0.114957",
|
||||
"date": "2025-11-05T10:26:59Z"
|
||||
},
|
||||
{
|
||||
"name": "nicolargo/glances",
|
||||
"version": "v4.4.1",
|
||||
@ -1024,6 +1189,11 @@
|
||||
"version": "0.42.1",
|
||||
"date": "2020-06-07T07:27:04Z"
|
||||
},
|
||||
{
|
||||
"name": "wanetty/upgopher",
|
||||
"version": "v1.12.0",
|
||||
"date": "2025-11-01T14:32:38Z"
|
||||
},
|
||||
{
|
||||
"name": "zabbix/zabbix",
|
||||
"version": "7.4.5",
|
||||
@ -1039,16 +1209,16 @@
|
||||
"version": "v1.10.1",
|
||||
"date": "2025-10-31T08:25:57Z"
|
||||
},
|
||||
{
|
||||
"name": "mongodb/mongo",
|
||||
"version": "r7.0.26",
|
||||
"date": "2025-10-30T18:44:14Z"
|
||||
},
|
||||
{
|
||||
"name": "sassanix/Warracker",
|
||||
"version": "1.0.2",
|
||||
"date": "2025-10-30T18:23:23Z"
|
||||
},
|
||||
{
|
||||
"name": "LogicLabs-OU/OpenArchiver",
|
||||
"version": "v0.4.0",
|
||||
"date": "2025-10-30T16:35:23Z"
|
||||
},
|
||||
{
|
||||
"name": "homebridge/homebridge",
|
||||
"version": "v1.11.1",
|
||||
@ -1069,6 +1239,11 @@
|
||||
"version": "v3.0.0-beta.2",
|
||||
"date": "2025-10-28T10:16:29Z"
|
||||
},
|
||||
{
|
||||
"name": "bakito/adguardhome-sync",
|
||||
"version": "v0.8.2",
|
||||
"date": "2025-10-24T17:13:47Z"
|
||||
},
|
||||
{
|
||||
"name": "drakkan/sftpgo",
|
||||
"version": "v2.7.0",
|
||||
@ -1079,6 +1254,11 @@
|
||||
"version": "v0.8.8.3",
|
||||
"date": "2025-10-23T12:31:49Z"
|
||||
},
|
||||
{
|
||||
"name": "miniflux/v2",
|
||||
"version": "2.2.14",
|
||||
"date": "2025-10-23T02:12:05Z"
|
||||
},
|
||||
{
|
||||
"name": "louislam/uptime-kuma",
|
||||
"version": "2.0.2",
|
||||
@ -1134,6 +1314,11 @@
|
||||
"version": "v1.5.9",
|
||||
"date": "2025-10-06T08:34:01Z"
|
||||
},
|
||||
{
|
||||
"name": "donetick/donetick",
|
||||
"version": "v0.1.64",
|
||||
"date": "2025-10-03T05:18:24Z"
|
||||
},
|
||||
{
|
||||
"name": "MagicMirrorOrg/MagicMirror",
|
||||
"version": "v2.33.0",
|
||||
@ -1179,6 +1364,11 @@
|
||||
"version": "v0.17.0",
|
||||
"date": "2025-09-19T22:23:28Z"
|
||||
},
|
||||
{
|
||||
"name": "Flomp/wanderer",
|
||||
"version": "v0.18.3",
|
||||
"date": "2025-09-19T16:16:11Z"
|
||||
},
|
||||
{
|
||||
"name": "docmost/docmost",
|
||||
"version": "v0.23.2",
|
||||
@ -1214,6 +1404,11 @@
|
||||
"version": "v0.8.1",
|
||||
"date": "2025-09-14T06:45:23Z"
|
||||
},
|
||||
{
|
||||
"name": "ThePhaseless/Byparr",
|
||||
"version": "v2.0.1",
|
||||
"date": "2025-09-11T20:29:38Z"
|
||||
},
|
||||
{
|
||||
"name": "zerotier/ZeroTierOne",
|
||||
"version": "1.16.0",
|
||||
@ -1314,6 +1509,11 @@
|
||||
"version": "1.34.3",
|
||||
"date": "2025-07-30T09:10:59Z"
|
||||
},
|
||||
{
|
||||
"name": "eko/pihole-exporter",
|
||||
"version": "v1.2.0",
|
||||
"date": "2025-07-29T19:15:37Z"
|
||||
},
|
||||
{
|
||||
"name": "caddyserver/xcaddy",
|
||||
"version": "v0.4.5",
|
||||
@ -1384,6 +1584,11 @@
|
||||
"version": "2025-05-07-r1",
|
||||
"date": "2025-05-07T12:18:42Z"
|
||||
},
|
||||
{
|
||||
"name": "CyferShepard/Jellystat",
|
||||
"version": "1.1.6",
|
||||
"date": "2025-05-01T17:11:00Z"
|
||||
},
|
||||
{
|
||||
"name": "dotnetfactory/fluid-calendar",
|
||||
"version": "v1.4.0",
|
||||
@ -1543,10 +1748,5 @@
|
||||
"name": "thelounge/thelounge-deb",
|
||||
"version": "v4.4.3",
|
||||
"date": "2024-04-06T12:24:35Z"
|
||||
},
|
||||
{
|
||||
"name": "deepch/RTSPtoWeb",
|
||||
"version": "v2.4.3",
|
||||
"date": "2023-03-29T12:05:02Z"
|
||||
}
|
||||
]
|
||||
|
||||
@ -34,7 +34,7 @@ export default function CodeCopyButton({
|
||||
localStorage.setItem("warning", "1");
|
||||
setTimeout(() => {
|
||||
toast.error(
|
||||
"Be careful when copying scripts from the internet. Always remember check the source!",
|
||||
"Be careful when copying scripts from the internet. Always remember to check the source!",
|
||||
{ duration: 8000 },
|
||||
);
|
||||
}, 500);
|
||||
|
||||
39
install/coolify-install.sh
Normal file
39
install/coolify-install.sh
Normal 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
|
||||
39
install/dokploy-install.sh
Normal file
39
install/dokploy-install.sh
Normal 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://dokploy.com/
|
||||
|
||||
source /dev/stdin <<<"$FUNCTIONS_FILE_PATH"
|
||||
color
|
||||
verb_ip6
|
||||
catch_errors
|
||||
setting_up_container
|
||||
network_check
|
||||
update_os
|
||||
|
||||
msg_info "Installing Dependencies"
|
||||
$STD apt-get install -y \
|
||||
git \
|
||||
openssl
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
msg_warn "WARNING: This script will run an external installer from a third-party source (https://dokploy.com/)."
|
||||
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://dokploy.com/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 Dokploy (Patience - this installs Docker and pulls containers)"
|
||||
$STD bash <(curl -sSL https://dokploy.com/install.sh)
|
||||
msg_ok "Installed Dokploy"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
162
install/speedtest-tracker-install.sh
Normal file
162
install/speedtest-tracker-install.sh
Normal file
@ -0,0 +1,162 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Copyright (c) 2021-2025 community-scripts ORG
|
||||
# Author: AlphaLawless
|
||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
|
||||
# Source: https://github.com/alexjustesen/speedtest-tracker
|
||||
|
||||
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 \
|
||||
nginx \
|
||||
sqlite3
|
||||
msg_ok "Installed Dependencies"
|
||||
|
||||
PHP_VERSION="8.4" PHP_FPM="YES" PHP_MODULE="common,sqlite3,redis" setup_php
|
||||
setup_composer
|
||||
NODE_VERSION="22" setup_nodejs
|
||||
import_local_ip
|
||||
fetch_and_deploy_gh_release "speedtest-tracker" "alexjustesen/speedtest-tracker" "tarball" "latest" "/opt/speedtest-tracker"
|
||||
|
||||
msg_info "Installing Speedtest CLI"
|
||||
setup_deb822_repo \
|
||||
"speedtest-cli" \
|
||||
"https://packagecloud.io/ookla/speedtest-cli/gpgkey" \
|
||||
"https://packagecloud.io/ookla/speedtest-cli/debian" \
|
||||
"$(get_os_info codename)" \
|
||||
"main"
|
||||
$STD apt install -y speedtest
|
||||
msg_ok "Installed Speedtest CLI"
|
||||
|
||||
msg_info "Configuring PHP-FPM runtime directory"
|
||||
mkdir -p /etc/systemd/system/php8.4-fpm.service.d/
|
||||
cat <<EOF >/etc/systemd/system/php8.4-fpm.service.d/override.conf
|
||||
[Service]
|
||||
RuntimeDirectory=php
|
||||
RuntimeDirectoryMode=0755
|
||||
EOF
|
||||
msg_ok "Configured PHP-FPM runtime directory"
|
||||
|
||||
msg_info "Setting up Speedtest Tracker"
|
||||
cd /opt/speedtest-tracker
|
||||
APP_KEY=$(php -r "echo bin2hex(random_bytes(16));")
|
||||
TIMEZONE=$(timedatectl | grep "Time zone" | awk '{print $3}')
|
||||
cat <<EOF >/opt/speedtest-tracker/.env
|
||||
APP_NAME="Speedtest Tracker"
|
||||
APP_ENV=production
|
||||
APP_TIMEZONE=${TIMEZONE}
|
||||
APP_KEY=base64:$(echo -n $APP_KEY | base64)
|
||||
APP_DEBUG=false
|
||||
APP_URL=http://${LOCAL_IP}
|
||||
|
||||
LOG_CHANNEL=stack
|
||||
LOG_LEVEL=debug
|
||||
|
||||
DB_CONNECTION=sqlite
|
||||
DB_DATABASE=/opt/speedtest-tracker/database/database.sqlite
|
||||
|
||||
BROADCAST_DRIVER=log
|
||||
CACHE_DRIVER=file
|
||||
FILESYSTEM_DISK=local
|
||||
QUEUE_CONNECTION=sync
|
||||
SESSION_DRIVER=file
|
||||
SESSION_LIFETIME=120
|
||||
|
||||
SPEEDTEST_SCHEDULE="0 */6 * * *"
|
||||
SPEEDTEST_SERVERS=
|
||||
PRUNE_RESULTS_OLDER_THAN=0
|
||||
|
||||
DISPLAY_TIMEZONE=${TIMEZONE}
|
||||
EOF
|
||||
mkdir -p /opt/speedtest-tracker/database
|
||||
touch /opt/speedtest-tracker/database/database.sqlite
|
||||
export COMPOSER_ALLOW_SUPERUSER=1
|
||||
$STD composer install --optimize-autoloader --no-dev
|
||||
$STD npm ci
|
||||
$STD npm run build
|
||||
$STD php artisan key:generate --force
|
||||
$STD php artisan migrate --force --seed
|
||||
$STD php artisan config:clear
|
||||
$STD php artisan cache:clear
|
||||
$STD php artisan view:clear
|
||||
chown -R www-data:www-data /opt/speedtest-tracker
|
||||
chmod -R 755 /opt/speedtest-tracker/storage
|
||||
chmod -R 755 /opt/speedtest-tracker/bootstrap/cache
|
||||
msg_ok "Set up Speedtest Tracker"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat <<EOF >/etc/systemd/system/speedtest-tracker.service
|
||||
[Unit]
|
||||
Description=Speedtest Tracker Queue Worker
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=www-data
|
||||
Group=www-data
|
||||
Restart=always
|
||||
ExecStart=/usr/bin/php /opt/speedtest-tracker/artisan queue:work --sleep=3 --tries=3 --max-time=3600
|
||||
WorkingDirectory=/opt/speedtest-tracker
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable -q --now speedtest-tracker
|
||||
msg_ok "Created Service"
|
||||
|
||||
msg_info "Setting up Scheduler"
|
||||
cat <<EOF >/etc/cron.d/speedtest-tracker
|
||||
* * * * * www-data cd /opt/speedtest-tracker && php artisan schedule:run >> /dev/null 2>&1
|
||||
EOF
|
||||
msg_ok "Set up Scheduler"
|
||||
|
||||
msg_info "Configuring Nginx"
|
||||
cat <<EOF >/etc/nginx/sites-available/speedtest-tracker
|
||||
server {
|
||||
listen 80;
|
||||
server_name _;
|
||||
root /opt/speedtest-tracker/public;
|
||||
|
||||
add_header X-Frame-Options "SAMEORIGIN";
|
||||
add_header X-Content-Type-Options "nosniff";
|
||||
|
||||
index index.php;
|
||||
|
||||
charset utf-8;
|
||||
|
||||
location / {
|
||||
try_files \$uri \$uri/ /index.php?\$query_string;
|
||||
}
|
||||
|
||||
location = /favicon.ico { access_log off; log_not_found off; }
|
||||
location = /robots.txt { access_log off; log_not_found off; }
|
||||
|
||||
error_page 404 /index.php;
|
||||
|
||||
location ~ \.php$ {
|
||||
fastcgi_pass unix:/var/run/php/php8.4-fpm.sock;
|
||||
fastcgi_param SCRIPT_FILENAME \$realpath_root\$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
}
|
||||
|
||||
location ~ /\.(?!well-known).* {
|
||||
deny all;
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
ln -sf /etc/nginx/sites-available/speedtest-tracker /etc/nginx/sites-enabled/
|
||||
rm -f /etc/nginx/sites-enabled/default
|
||||
systemctl reload nginx
|
||||
msg_ok "Configured Nginx"
|
||||
|
||||
motd_ssh
|
||||
customize
|
||||
cleanup_lxc
|
||||
Reference in New Issue
Block a user