mirror of
https://github.com/tiennm99/coolify.git
synced 2026-10-15 02:16:43 +00:00
Merge branch 'v4.x' into chore/gitea-runner-version-bump
This commit is contained in:
370 files changed
+18563
-7215
No files matched your search
@@ -7,7 +7,7 @@
|
||||
|
||||
services:
|
||||
audiobookshelf:
|
||||
image: ghcr.io/advplyr/audiobookshelf:latest
|
||||
image: ghcr.io/advplyr/audiobookshelf:2.34.0
|
||||
environment:
|
||||
- SERVICE_URL_AUDIOBOOKSHELF_80
|
||||
- TZ=${TIMEZONE:-America/Toronto}
|
||||
|
||||
@@ -38,6 +38,7 @@ services:
|
||||
- SMTP_USERNAME=${CHATWOOT_SMTP_USERNAME}
|
||||
- SMTP_PASSWORD=${CHATWOOT_SMTP_PASSWORD}
|
||||
- ACTIVE_STORAGE_SERVICE=${ACTIVE_STORAGE_SERVICE:-local}
|
||||
- SAFE_FETCH_ALLOW_PRIVATE_NETWORK=${SAFE_FETCH_ALLOW_PRIVATE_NETWORK:-false}
|
||||
entrypoint: docker/entrypoints/rails.sh
|
||||
command: sh -c "bundle exec rails db:chatwoot_prepare && bundle exec rails s -p 3000 -b 0.0.0.0"
|
||||
volumes:
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# documentation: https://github.com/favonia/cloudflare-ddns
|
||||
# slogan: A small, feature-rich, and robust Cloudflare DDNS updater.
|
||||
# category: automation
|
||||
# tags: cloud, ddns
|
||||
# logo: svgs/cloudflare-ddns.svg
|
||||
|
||||
services:
|
||||
cloudflare-ddns:
|
||||
image: favonia/cloudflare-ddns:1.16.2
|
||||
network_mode: host
|
||||
user: "1000:1000"
|
||||
read_only: true
|
||||
cap_drop: [all]
|
||||
security_opt: [no-new-privileges:true]
|
||||
environment:
|
||||
- CLOUDFLARE_API_TOKEN=${CLOUDFLARE_API_TOKEN:?}
|
||||
- DOMAINS=${DOMAINS:?}
|
||||
- PROXIED=${PROXIED:-false}
|
||||
- IP6_PROVIDER=${IP6_PROVIDER:-none}
|
||||
@@ -0,0 +1,27 @@
|
||||
# documentation: https://www.emqx.io/docs/en/latest/deploy/install-docker.html
|
||||
# slogan: Open-source MQTT broker for IoT, IIoT, and connected vehicles.
|
||||
# category: Networking
|
||||
# tags: mqtt,broker,iot,messaging,emqx,iiot
|
||||
# logo: svgs/emqx-enterprise.svg
|
||||
# port: 18083
|
||||
|
||||
services:
|
||||
emqx:
|
||||
image: emqx/emqx-enterprise:6.2.0
|
||||
environment:
|
||||
- SERVICE_URL_EMQX_18083
|
||||
- EMQX_DASHBOARD__DEFAULT_PASSWORD=${SERVICE_PASSWORD_EMQX}
|
||||
ports:
|
||||
- "1883:1883"
|
||||
- "8083:8083"
|
||||
- "8084:8084"
|
||||
- "8883:8883"
|
||||
volumes:
|
||||
- emqx_data:/opt/emqx/data
|
||||
- emqx_log:/opt/emqx/log
|
||||
healthcheck:
|
||||
test: ["CMD", "/opt/emqx/bin/emqx", "ctl", "status"]
|
||||
interval: 10s
|
||||
timeout: 30s
|
||||
retries: 5
|
||||
start_period: 30s
|
||||
@@ -12,7 +12,7 @@ services:
|
||||
- GARAGE_S3_API_URL=$GARAGE_S3_API_URL
|
||||
- GARAGE_WEB_URL=$GARAGE_WEB_URL
|
||||
- GARAGE_ADMIN_URL=$GARAGE_ADMIN_URL
|
||||
- GARAGE_RPC_SECRET=${SERVICE_HEX_32_RPCSECRET}
|
||||
- GARAGE_RPC_SECRET=${SERVICE_HEX_64_RPCSECRET}
|
||||
- GARAGE_ADMIN_TOKEN=$SERVICE_PASSWORD_GARAGE
|
||||
- GARAGE_METRICS_TOKEN=$SERVICE_PASSWORD_GARAGEMETRICS
|
||||
- GARAGE_ALLOW_WORLD_READABLE_SECRETS=true
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
services:
|
||||
grocy:
|
||||
image: lscr.io/linuxserver/grocy:latest
|
||||
image: lscr.io/linuxserver/grocy:4.6.0
|
||||
environment:
|
||||
- SERVICE_URL_GROCY
|
||||
- PUID=1000
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
# documentation: https://healthchecks.io/docs
|
||||
# slogan: Healthchecks is a cron job monitoring service. It listens for HTTP requests and email messages from your cron jobs and scheduled tasks.
|
||||
# category: monitoring
|
||||
# tags: monitoring, status, performance, web, services, applications, real-time
|
||||
# logo: svgs/healthchecks.webp
|
||||
# port: 80000
|
||||
|
||||
services:
|
||||
healthchecks:
|
||||
image: "healthchecks/healthchecks:v4.2"
|
||||
container_name: healthchecks
|
||||
environment:
|
||||
- SERVICE_URL_HEALTHCHECKS_8000
|
||||
- DB=sqlite
|
||||
- DB_NAME=/data/hc.sqlite
|
||||
- "ALLOWED_HOSTS=${ALLOWED_HOSTS:-*}"
|
||||
- "REGISTRATION_OPEN=${REGISTRATION_OPEN:-True}"
|
||||
- "DEBUG=${DEBUG:-False}"
|
||||
- "SECRET_KEY=${SECRET_KEY:?${SERVICE_PASSWORD_64_HEALTHCHECKS}}"
|
||||
- "SITE_ROOT=${SERVICE_URL_HEALTHCHECKS}"
|
||||
- "DEFAULT_FROM_EMAIL=${DEFAULT_FROM_EMAIL:-fixme-email-address-here}"
|
||||
- "EMAIL_HOST=${EMAIL_HOST:-my-smtp-server-here.com}"
|
||||
- "EMAIL_PORT=${EMAIL_PORT:-465}"
|
||||
- "EMAIL_HOST_USER=${EMAIL_HOST_USER:-my_username}"
|
||||
- "EMAIL_HOST_PASSWORD=${EMAIL_HOST_PASSWORD:-mypassword}"
|
||||
- "EMAIL_USE_SSL=${EMAIL_USE_SSL:-True}"
|
||||
- "EMAIL_USE_TLS=${EMAIL_USE_TLS:-False}"
|
||||
volumes:
|
||||
- "healthchecks-data:/data"
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
# documentation: https://github.com/nesquena/hermes-webui
|
||||
# slogan: Hermes Agent — autonomous AI agent with persistent memory, scheduling, and a self-hosted web chat UI.
|
||||
# category: ai
|
||||
# tags: ai, agent, llm, chatbot, hermes, openrouter, anthropic, openai
|
||||
# logo: svgs/hermes-agent.png
|
||||
# port: 8787
|
||||
|
||||
services:
|
||||
hermes-agent:
|
||||
image: 'nousresearch/hermes-agent@sha256:2f1f2f1725e5dc9a61cf6a2dea5aca52a776ec4d022cb29679e6aa3ff303e77a' # v2026.5.29
|
||||
command: gateway run
|
||||
environment:
|
||||
- HERMES_HOME=/home/hermes/.hermes
|
||||
- HERMES_UID=1000
|
||||
- HERMES_GID=1000
|
||||
- OPENROUTER_API_KEY=${OPENROUTER_API_KEY}
|
||||
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
|
||||
- OPENAI_API_KEY=${OPENAI_API_KEY}
|
||||
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
|
||||
volumes:
|
||||
- hermes-home:/home/hermes/.hermes
|
||||
- hermes-agent-src:/opt/hermes
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "test -d /home/hermes/.hermes || exit 1"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
hermes-webui:
|
||||
image: ghcr.io/nesquena/hermes-webui:0.51.92
|
||||
depends_on:
|
||||
- hermes-agent
|
||||
environment:
|
||||
- SERVICE_URL_HERMESWEBUI_8787
|
||||
- HERMES_WEBUI_HOST=0.0.0.0
|
||||
- HERMES_WEBUI_PORT=8787
|
||||
- HERMES_WEBUI_STATE_DIR=/home/hermeswebui/.hermes/webui
|
||||
- WANTED_UID=1000
|
||||
- WANTED_GID=1000
|
||||
- HERMES_WEBUI_PASSWORD=${SERVICE_PASSWORD_HERMESWEBUI}
|
||||
volumes:
|
||||
- hermes-home:/home/hermeswebui/.hermes
|
||||
- hermes-agent-src:/home/hermeswebui/.hermes/hermes-agent:ro
|
||||
- hermes-workspace:/workspace
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://127.0.0.1:8787/health"]
|
||||
interval: 30s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
services:
|
||||
jellyfin:
|
||||
image: lscr.io/linuxserver/jellyfin:latest
|
||||
image: lscr.io/linuxserver/jellyfin:10.11.8
|
||||
environment:
|
||||
- SERVICE_URL_JELLYFIN_8096
|
||||
- PUID=1000
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
services:
|
||||
mealie:
|
||||
image: 'ghcr.io/mealie-recipes/mealie:latest'
|
||||
image: 'ghcr.io/mealie-recipes/mealie:3.17.0'
|
||||
environment:
|
||||
- SERVICE_URL_MEALIE_9000
|
||||
- ALLOW_SIGNUP=${ALLOW_SIGNUP:-true}
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
# documentation: https://openobserve.ai/docs/
|
||||
# slogan: Cloud-native observability platform for logs, metrics, traces, RUM, errors and session replays — a 140x cheaper alternative to Elasticsearch, Splunk and Datadog.
|
||||
# category: monitoring
|
||||
# tags: logs, metrics, traces, observability, monitoring, opentelemetry, otel, elasticsearch, splunk, datadog
|
||||
# logo: svgs/openobserve.svg
|
||||
# port: 5080
|
||||
|
||||
services:
|
||||
openobserve:
|
||||
image: public.ecr.aws/zinclabs/openobserve:v0.90.0
|
||||
environment:
|
||||
- SERVICE_URL_OPENOBSERVE_5080
|
||||
- ZO_DATA_DIR=/data
|
||||
- ZO_ROOT_USER_EMAIL=${ZO_ROOT_USER_EMAIL:-root@example.com}
|
||||
- ZO_ROOT_USER_PASSWORD=${SERVICE_PASSWORD_OPENOBSERVE}
|
||||
- ZO_TELEMETRY=${ZO_TELEMETRY:-false}
|
||||
- ZO_COOKIE_SECURE_ONLY=${ZO_COOKIE_SECURE_ONLY:-true}
|
||||
volumes:
|
||||
- openobserve-data:/data
|
||||
healthcheck:
|
||||
test: ["CMD", "/openobserve", "node", "status"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
start_period: 60s
|
||||
@@ -15,8 +15,8 @@ services:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_URL_OWNCLOUD_8080
|
||||
- OWNCLOUD_DOMAIN=${SERVICE_URL_OWNCLOUD}
|
||||
- OWNCLOUD_TRUSTED_DOMAINS=${SERVICE_URL_OWNCLOUD}
|
||||
- OWNCLOUD_DOMAIN=${SERVICE_FQDN_OWNCLOUD}
|
||||
- OWNCLOUD_TRUSTED_DOMAINS=${SERVICE_FQDN_OWNCLOUD}
|
||||
- OWNCLOUD_DB_TYPE=mysql
|
||||
- OWNCLOUD_DB_HOST=mariadb
|
||||
- OWNCLOUD_DB_NAME=${DB_NAME:-owncloud}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
services:
|
||||
ryot:
|
||||
image: ignisda/ryot:v8
|
||||
image: ignisda/ryot:v10.3.0
|
||||
environment:
|
||||
- SERVICE_URL_RYOT_8000
|
||||
- DATABASE_URL=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgresql:5432/${POSTGRES_DB}
|
||||
|
||||
Reference in new issue
Block a user