Merge branch 'next' into v4.x

This commit is contained in:
matfire authored and GitHub committed 2026-03-15 18:04:00 +01:00
commit e62940318d
326 files changed
+19288 -2640

No files matched your search

+17 -4
View File
@@ -6,13 +6,26 @@
services:
beszel-agent:
image: 'henrygd/beszel-agent:0.16.1' # Released on 14 Nov 2025
image: 'henrygd/beszel-agent:0.18.4' # Released on 21 Feb 2026
network_mode: host # Network stats graphs won't work if agent cannot access host system network stack
environment:
# Required
- LISTEN=/beszel_socket/beszel.sock
- HUB_URL=${HUB_URL?}
- 'TOKEN=${TOKEN?}'
- 'KEY=${KEY?}'
- HUB_URL=$SERVICE_URL_BESZEL
- TOKEN=${TOKEN} # From hub token settings
- KEY=${KEY} # SSH public key(s) from hub
# Optional
- DISABLE_SSH=${DISABLE_SSH:-false} # Disable SSH
- LOG_LEVEL=${LOG_LEVEL:-warn} # Logging level
- SKIP_GPU=${SKIP_GPU:-false} # Skip GPU monitoring
- SYSTEM_NAME=${SYSTEM_NAME} # Custom system name
volumes:
- beszel_agent_data:/var/lib/beszel-agent
- beszel_socket:/beszel_socket
- '/var/run/docker.sock:/var/run/docker.sock:ro'
healthcheck:
test: ['CMD', '/agent', 'health']
interval: 60s
timeout: 20s
retries: 10
start_period: 5s
+26 -6
View File
@@ -9,21 +9,41 @@
# Add the public Key in "Key" env variable and token in the "Token" variable below (These are obtained from Beszel UI)
services:
beszel:
image: 'henrygd/beszel:0.16.1' # Released on 14 Nov 2025
image: 'henrygd/beszel:0.18.4' # Released on 21 Feb 2026
environment:
- SERVICE_URL_BESZEL_8090
- CONTAINER_DETAILS=${CONTAINER_DETAILS:-true}
- SHARE_ALL_SYSTEMS=${SHARE_ALL_SYSTEMS:-false}
volumes:
- 'beszel_data:/beszel_data'
- 'beszel_socket:/beszel_socket'
healthcheck:
test: ['CMD', '/beszel', 'health', '--url', 'http://localhost:8090']
interval: 30s
timeout: 20s
retries: 10
start_period: 5s
beszel-agent:
image: 'henrygd/beszel-agent:0.16.1' # Released on 14 Nov 2025
image: 'henrygd/beszel-agent:0.18.4' # Released on 21 Feb 2026
network_mode: host # Network stats graphs won't work if agent cannot access host system network stack
environment:
# Required
- LISTEN=/beszel_socket/beszel.sock
- HUB_URL=http://beszel:8090
- 'TOKEN=${TOKEN}'
- 'KEY=${KEY}'
- HUB_URL=$SERVICE_URL_BESZEL
- TOKEN=${TOKEN} # From hub token settings
- KEY=${KEY} # SSH public key(s) from hub
# Optional
- DISABLE_SSH=${DISABLE_SSH:-false} # Disable SSH
- LOG_LEVEL=${LOG_LEVEL:-warn} # Logging level
- SKIP_GPU=${SKIP_GPU:-false} # Skip GPU monitoring
- SYSTEM_NAME=${SYSTEM_NAME} # Custom system name
volumes:
- beszel_agent_data:/var/lib/beszel-agent
- beszel_socket:/beszel_socket
- '/var/run/docker.sock:/var/run/docker.sock:ro'
healthcheck:
test: ['CMD', '/agent', 'health']
interval: 60s
timeout: 20s
retries: 10
start_period: 5s
+4 -4
View File
@@ -3,15 +3,15 @@
# category: media
# tags: podcast, media, audio, video, streaming, hosting, platform, castopod
# logo: svgs/castopod.svg
# port: 8000
# port: 8080
services:
castopod:
image: castopod/castopod:latest
image: castopod/castopod:1.15.4
volumes:
- castopod-media:/var/www/castopod/public/media
environment:
- SERVICE_URL_CASTOPOD_8000
- SERVICE_URL_CASTOPOD_8080
- MYSQL_DATABASE=castopod
- MYSQL_USER=$SERVICE_USER_MYSQL
- MYSQL_PASSWORD=$SERVICE_PASSWORD_MYSQL
@@ -27,7 +27,7 @@ services:
"CMD",
"curl",
"-f",
"http://localhost:8000/health"
"http://localhost:8080/health"
]
interval: 5s
timeout: 20s
+1 -1
View File
@@ -38,7 +38,7 @@ services:
- POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES}
- POSTGRES_DB=${POSTGRES_DB:-cloudreve-db}
volumes:
- postgres-data:/var/lib/postgresql/data
- postgres-data:/var/lib/postgresql
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 10s
+1
View File
@@ -16,6 +16,7 @@ services:
- ENTE_APPS_PUBLIC_ALBUMS=${SERVICE_URL_WEB_3002}
- ENTE_APPS_CAST=${SERVICE_URL_WEB_3004}
- ENTE_APPS_ACCOUNTS=${SERVICE_URL_WEB_3001}
- ENTE_PHOTOS_ORIGIN=${SERVICE_URL_WEB}
- ENTE_DB_HOST=${ENTE_DB_HOST:-postgres}
- ENTE_DB_PORT=${ENTE_DB_PORT:-5432}
+5 -5
View File
@@ -3,16 +3,16 @@
# category: productivity
# tags: lowcode, nocode, spreadsheet, database, relational
# logo: svgs/grist.svg
# port: 443
# port: 8484
services:
grist:
image: gristlabs/grist:latest
environment:
- SERVICE_URL_GRIST_443
- SERVICE_URL_GRIST_8484
- APP_HOME_URL=${SERVICE_URL_GRIST}
- APP_DOC_URL=${SERVICE_URL_GRIST}
- GRIST_DOMAIN=${SERVICE_URL_GRIST}
- GRIST_DOMAIN=${SERVICE_FQDN_GRIST}
- TZ=${TZ:-UTC}
- GRIST_SUPPORT_ANON=${SUPPORT_ANON:-false}
- GRIST_FORCE_LOGIN=${FORCE_LOGIN:-true}
@@ -20,7 +20,7 @@ services:
- GRIST_PAGE_TITLE_SUFFIX=${PAGE_TITLE_SUFFIX:- - Suffix}
- GRIST_HIDE_UI_ELEMENTS=${HIDE_UI_ELEMENTS:-billing,sendToDrive,supportGrist,multiAccounts,tutorials}
- GRIST_UI_FEATURES=${UI_FEATURES:-helpCenter,billing,templates,createSite,multiSite,sendToDrive,tutorials,supportGrist}
- GRIST_DEFAULT_EMAIL=${DEFAULT_EMAIL:-test@example.com}
- GRIST_DEFAULT_EMAIL=${DEFAULT_EMAIL:-?}
- GRIST_ORG_IN_PATH=${ORG_IN_PATH:-true}
- GRIST_OIDC_SP_HOST=${SERVICE_URL_GRIST}
- GRIST_OIDC_IDP_SCOPES=${OIDC_IDP_SCOPES:-openid profile email}
@@ -37,7 +37,7 @@ services:
- TYPEORM_DATABASE=${POSTGRES_DATABASE:-grist-db}
- TYPEORM_USERNAME=${SERVICE_USER_POSTGRES}
- TYPEORM_PASSWORD=${SERVICE_PASSWORD_POSTGRES}
- TYPEORM_HOST=${TYPEORM_HOST}
- TYPEORM_HOST=${TYPEORM_HOST:-postgres}
- TYPEORM_PORT=${TYPEORM_PORT:-5432}
- TYPEORM_LOGGING=${TYPEORM_LOGGING:-false}
- REDIS_URL=${REDIS_URL:-redis://redis:6379}
+3 -3
View File
@@ -7,7 +7,7 @@
services:
backend:
image: hoppscotch/hoppscotch:latest
image: hoppscotch/hoppscotch:2026.2.1
environment:
- SERVICE_URL_HOPPSCOTCH_80
- VITE_ALLOWED_AUTH_PROVIDERS=${VITE_ALLOWED_AUTH_PROVIDERS:-GOOGLE,GITHUB,MICROSOFT,EMAIL}
@@ -34,7 +34,7 @@ services:
retries: 10
hoppscotch-db:
image: postgres:latest
image: postgres:15
volumes:
- postgres_data:/var/lib/postgresql/data
environment:
@@ -51,7 +51,7 @@ services:
db-migration:
exclude_from_hc: true
image: hoppscotch/hoppscotch:latest
image: hoppscotch/hoppscotch:2026.2.1
depends_on:
hoppscotch-db:
condition: service_healthy
@@ -1,3 +1,4 @@
# ignore: true
# documentation: https://github.com/coollabsio/minio?tab=readme-ov-file#minio-docker-images
# slogan: MinIO is a high performance object storage server compatible with Amazon S3 APIs.
# category: storage
@@ -7,7 +7,7 @@
services:
n8n:
image: n8nio/n8n:2.1.5
image: n8nio/n8n:2.10.4
environment:
- SERVICE_URL_N8N_5678
- N8N_EDITOR_BASE_URL=${SERVICE_URL_N8N}
@@ -54,7 +54,7 @@ services:
retries: 10
n8n-worker:
image: n8nio/n8n:2.1.5
image: n8nio/n8n:2.10.4
command: worker
environment:
- GENERIC_TIMEZONE=${GENERIC_TIMEZONE:-UTC}
@@ -122,7 +122,7 @@ services:
retries: 10
task-runners:
image: n8nio/runners:2.1.5
image: n8nio/runners:2.10.4
environment:
- N8N_RUNNERS_TASK_BROKER_URI=${N8N_RUNNERS_TASK_BROKER_URI:-http://n8n-worker:5679}
- N8N_RUNNERS_AUTH_TOKEN=$SERVICE_PASSWORD_N8N
+2 -2
View File
@@ -7,7 +7,7 @@
services:
n8n:
image: n8nio/n8n:2.1.5
image: n8nio/n8n:2.10.2
environment:
- SERVICE_URL_N8N_5678
- N8N_EDITOR_BASE_URL=${SERVICE_URL_N8N}
@@ -47,7 +47,7 @@ services:
retries: 10
task-runners:
image: n8nio/runners:2.1.5
image: n8nio/runners:2.10.2
environment:
- N8N_RUNNERS_TASK_BROKER_URI=${N8N_RUNNERS_TASK_BROKER_URI:-http://n8n:5679}
- N8N_RUNNERS_AUTH_TOKEN=$SERVICE_PASSWORD_N8N
+2 -2
View File
@@ -7,7 +7,7 @@
services:
n8n:
image: n8nio/n8n:2.1.5
image: n8nio/n8n:2.10.2
environment:
- SERVICE_URL_N8N_5678
- N8N_EDITOR_BASE_URL=${SERVICE_URL_N8N}
@@ -38,7 +38,7 @@ services:
retries: 10
task-runners:
image: n8nio/runners:2.1.5
image: n8nio/runners:2.10.2
environment:
- N8N_RUNNERS_TASK_BROKER_URI=${N8N_RUNNERS_TASK_BROKER_URI:-http://n8n:5679}
- N8N_RUNNERS_AUTH_TOKEN=${SERVICE_PASSWORD_N8N}
+1
View File
@@ -1,3 +1,4 @@
# ignore: true
# documentation: https://docs.plane.so/self-hosting/methods/docker-compose
# slogan: The open source project management tool
# category: productivity
+2 -1
View File
@@ -1,3 +1,4 @@
# ignore: true
# documentation: https://pterodactyl.io/
# slogan: Pterodactyl is a free, open-source game server management panel
# category: media
@@ -102,4 +103,4 @@ services:
- MAIL_PORT=$MAIL_PORT
- MAIL_USERNAME=$MAIL_USERNAME
- MAIL_PASSWORD=$MAIL_PASSWORD
- MAIL_ENCRYPTION=$MAIL_ENCRYPTION
- MAIL_ENCRYPTION=$MAIL_ENCRYPTION
@@ -1,3 +1,4 @@
# ignore: true
# documentation: https://pterodactyl.io/
# slogan: Pterodactyl is a free, open-source game server management panel
# category: media
+33
View File
@@ -0,0 +1,33 @@
# documentation: https://docs.pydio.com/
# slogan: High-performance large file sharing, native no-code automation, and a collaboration-centric architecture that simplifies access control without compromising security or compliance.
# tags: storage
# logo: svgs/cells.svg
# port: 8080
services:
cells:
image: pydio/cells:4.4
environment:
- SERVICE_URL_CELLS_8080
- CELLS_SITE_EXTERNAL=${SERVICE_URL_CELLS}
- CELLS_SITE_NO_TLS=1
volumes:
- cells_data:/var/cells
mariadb:
image: 'mariadb:11'
volumes:
- mysql_data:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}
- MYSQL_DATABASE=${MYSQL_DATABASE:-cells}
- MYSQL_USER=${SERVICE_USER_MYSQL}
- MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL}
healthcheck:
test:
- CMD
- healthcheck.sh
- '--connect'
- '--innodb_initialized'
interval: 10s
timeout: 20s
retries: 5
+31
View File
@@ -0,0 +1,31 @@
# documentation: https://docs.spacebot.sh/docker
# slogan: An agentic AI system with specialized processes for thinking, working, and remembering.
# category: ai
# tags: ai, agent, anthropic, openai, discord, slack, llm, agentic
# logo: svgs/spacebot.png
# port: 19898
services:
spacebot:
image: "ghcr.io/spacedriveapp/spacebot:full"
environment:
- SERVICE_FQDN_SPACEBOT_19898
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
- OPENAI_API_KEY=${OPENAI_API_KEY}
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
- DISCORD_BOT_TOKEN=${DISCORD_BOT_TOKEN}
- SLACK_BOT_TOKEN=${SLACK_BOT_TOKEN}
- SLACK_APP_TOKEN=${SLACK_APP_TOKEN}
- BRAVE_SEARCH_API_KEY=${BRAVE_SEARCH_API_KEY}
- SPACEBOT_CHANNEL_MODEL=${SPACEBOT_CHANNEL_MODEL}
- SPACEBOT_WORKER_MODEL=${SPACEBOT_WORKER_MODEL}
volumes:
- "spacebot-data:/data"
security_opt:
- seccomp=unconfined
shm_size: 1g
healthcheck:
test: ["CMD", "curl", "-sf", "http://localhost:19898/api/health"]
interval: 30s
timeout: 5s
retries: 3