mirror of
https://github.com/tiennm99/coolify.git
synced 2026-10-19 10:15:04 +00:00
Merge branch 'coollabsio:v4.x' into add-opnform-template
This commit is contained in:
1172 files changed
+75197
-16105
No files matched your search
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.activepieces.com/docs/getting-started/introduction
|
||||
# slogan: Open source no-code business automation.
|
||||
# category: automation
|
||||
# tags: workflow, automation, no code, open source
|
||||
# logo: svgs/activepieces.png
|
||||
# port: 80
|
||||
@@ -8,13 +9,13 @@ services:
|
||||
activepieces:
|
||||
image: "ghcr.io/activepieces/activepieces:latest"
|
||||
environment:
|
||||
- SERVICE_FQDN_ACTIVEPIECES
|
||||
- SERVICE_URL_ACTIVEPIECES
|
||||
- AP_API_KEY=$SERVICE_PASSWORD_64_APIKEY
|
||||
- AP_ENCRYPTION_KEY=$SERVICE_PASSWORD_ENCRYPTIONKEY
|
||||
- AP_ENGINE_EXECUTABLE_PATH=${AP_ENGINE_EXECUTABLE_PATH:-dist/packages/engine/main.js}
|
||||
- AP_ENVIRONMENT=${AP_ENVIRONMENT:-prod}
|
||||
- AP_EXECUTION_MODE=${AP_EXECUTION_MODE:-UNSANDBOXED}
|
||||
- AP_FRONTEND_URL=${SERVICE_FQDN_ACTIVEPIECES}
|
||||
- AP_FRONTEND_URL=${SERVICE_URL_ACTIVEPIECES}
|
||||
- AP_JWT_SECRET=$SERVICE_PASSWORD_64_JWT
|
||||
- AP_POSTGRES_DATABASE=${POSTGRES_DB:-activepieces}
|
||||
- AP_POSTGRES_HOST=${POSTGRES_HOST:-postgres}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://actualbudget.org/docs/install/docker
|
||||
# slogan: A local-first personal finance app.
|
||||
# category: productivity
|
||||
# tags: budgeting,actual,finance,budget,money,expenses,income
|
||||
# logo: svgs/actualbudget.png
|
||||
# port: 5006
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
actual_server:
|
||||
image: actualbudget/actual-server:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_ACTUAL_5006
|
||||
- SERVICE_URL_ACTUAL_5006
|
||||
- ACTUAL_LOGIN_METHOD=password
|
||||
volumes:
|
||||
- actual_data:/data
|
||||
|
||||
@@ -1,19 +1,16 @@
|
||||
# documentation: https://docs.affine.pro/docs/self-host-affine
|
||||
# slogan: Affine is an open-source, all-in-one workspace and OS for knowledge management, a Notion/Miro alternative.
|
||||
# category: productivity
|
||||
# tags: knowledge-management,notion,miro,workspace
|
||||
# logo: svgs/affine.svg
|
||||
# port: 3010
|
||||
|
||||
services:
|
||||
affine:
|
||||
image: ghcr.io/toeverything/affine-graphql:stable
|
||||
command:
|
||||
- sh
|
||||
- '-c'
|
||||
- 'node ./scripts/self-host-predeploy && node ./dist/index.js'
|
||||
image: ghcr.io/toeverything/affine:stable
|
||||
depends_on:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
condition: service_healthy
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
@@ -24,14 +21,13 @@ services:
|
||||
options:
|
||||
max-size: 1000m
|
||||
environment:
|
||||
- SERVICE_FQDN_AFFINE_3010
|
||||
- NODE_OPTIONS=--import=./scripts/register.js
|
||||
- SERVICE_URL_AFFINE_3010
|
||||
- AFFINE_CONFIG_PATH=/root/.affine/config
|
||||
- REDIS_SERVER_HOST=redis
|
||||
- DATABASE_URL=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-affine}
|
||||
- NODE_ENV=production
|
||||
- AFFINE_SERVER_HOST=$SERVICE_FQDN_AFFINE
|
||||
- AFFINE_SERVER_EXTERNAL_URL=$SERVICE_FQDN_AFFINE
|
||||
- AFFINE_SERVER_HOST=$SERVICE_URL_AFFINE
|
||||
- AFFINE_SERVER_EXTERNAL_URL=$SERVICE_URL_AFFINE
|
||||
- MAILER_HOST=${MAILER_HOST}
|
||||
- MAILER_PORT=${MAILER_PORT}
|
||||
- MAILER_USER=${MAILER_USER}
|
||||
@@ -46,6 +42,24 @@ services:
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
affine_migration:
|
||||
exclude_from_hc: true
|
||||
image: ghcr.io/toeverything/affine:${AFFINE_REVISION:-stable}
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- affine-storage:/root/.affine/storage
|
||||
- affine-config:/root/.affine/config
|
||||
command: ['sh', '-c', 'node ./scripts/self-host-predeploy.js']
|
||||
environment:
|
||||
- REDIS_SERVER_HOST=redis
|
||||
- DATABASE_URL=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-affine}
|
||||
- AFFINE_INDEXER_ENABLED=false
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
redis:
|
||||
condition: service_healthy
|
||||
|
||||
redis:
|
||||
image: redis
|
||||
volumes:
|
||||
@@ -61,7 +75,7 @@ services:
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
postgres:
|
||||
image: postgres:16
|
||||
image: pgvector/pgvector:pg16
|
||||
volumes:
|
||||
- affine-postgres-data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# documentation: https://docs.anythingllm.com/installation-docker/overview
|
||||
# slogan: AnythingLLM is the easiest to use, all-in-one AI application that can do RAG, AI Agents, and much more with no code or infrastructure headaches.
|
||||
# tags: lowcode, nocode, ai, llm, openai, anthropic, machine-learning, rag, agents, chatbot, api, team, bot
|
||||
# category: ai
|
||||
# tags: lowcode, nocode, llm, openai, anthropic, machine-learning, rag, agents, chatbot, api, team, bot
|
||||
# logo: svgs/anythingllm.svg
|
||||
# port: 3001
|
||||
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
anything-llm:
|
||||
image: mintplexlabs/anythingllm
|
||||
environment:
|
||||
- SERVICE_FQDN_ANYTHINGLLM_3001
|
||||
- SERVICE_URL_ANYTHINGLLM_3001
|
||||
- STORAGE_DIR=/app/server/storage
|
||||
- DISABLE_TELEMETRY=${DISABLE_TELEMETRY:-true}
|
||||
- PASSWORDLOWERCASE=${PASSWORDLOWERCASE:-1}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.linuxserver.io/images/docker-apprise-api/
|
||||
# slogan: Push Notifications API
|
||||
# category: automation
|
||||
# tags: api, apprise
|
||||
# logo: svgs/apprise.png
|
||||
# port: 8000
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
apprise-api:
|
||||
image: linuxserver/apprise-api:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_APPRISE_8000
|
||||
- SERVICE_URL_APPRISE_8000
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=UTC
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
# documentation: https://appsmith.com
|
||||
# slogan: A low-code application platform for building internal tools.
|
||||
# tags: lowcode,nocode,no,low,platform
|
||||
# category: productivity
|
||||
# tags: lowcode, nocode, no, low, platform
|
||||
# logo: svgs/appsmith.svg
|
||||
|
||||
services:
|
||||
appsmith:
|
||||
image: index.docker.io/appsmith/appsmith-ce:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_APPSMITH
|
||||
- SERVICE_URL_APPSMITH
|
||||
- APPSMITH_MAIL_ENABLED=${APPSMITH_MAIL_ENABLED:-false}
|
||||
- APPSMITH_DISABLE_TELEMETRY=${APPSMITH_DISABLE_TELEMETRY:-false}
|
||||
- APPSMITH_DISABLE_INTERCOM=${APPSMITH_DISABLE_INTERCOM:-true}
|
||||
|
||||
+189
-73
@@ -1,30 +1,37 @@
|
||||
# documentation: https://appwrite.io
|
||||
# slogan: A backend-as-a-service platform that simplifies the web & mobile app development.
|
||||
# tags: backend-as-a-service, platform
|
||||
# category: backend
|
||||
# tags: backend, backend-as-a-service, platform
|
||||
# logo: svgs/appwrite.svg
|
||||
|
||||
services:
|
||||
appwrite:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
container_name: appwrite
|
||||
volumes:
|
||||
- appwrite-uploads:/storage/uploads:rw
|
||||
- appwrite-imports:/storage/imports:rw
|
||||
- appwrite-cache:/storage/cache:rw
|
||||
- appwrite-config:/storage/config:rw
|
||||
- appwrite-certificates:/storage/certificates:rw
|
||||
- appwrite-functions:/storage/functions:rw
|
||||
- appwrite-sites:/storage/sites:rw
|
||||
- appwrite-builds:/storage/builds:rw
|
||||
depends_on:
|
||||
- appwrite-mariadb
|
||||
- appwrite-redis
|
||||
environment:
|
||||
- SERVICE_FQDN_APPWRITE=/
|
||||
- SERVICE_URL_APPWRITE=/
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_EDITION=${_APP_EDITION:-self-hosted}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_LOCALE=${_APP_LOCALE:-en}
|
||||
- _APP_COMPRESSION_MIN_SIZE_BYTES=${_APP_COMPRESSION_MIN_SIZE_BYTES}
|
||||
- _APP_CONSOLE_WHITELIST_ROOT=${_APP_CONSOLE_WHITELIST_ROOT:-enabled}
|
||||
- _APP_CONSOLE_WHITELIST_EMAILS=${_APP_CONSOLE_WHITELIST_EMAILS}
|
||||
- _APP_CONSOLE_SESSION_ALERTS=${_APP_CONSOLE_SESSION_ALERTS}
|
||||
- _APP_CONSOLE_WHITELIST_IPS=${_APP_CONSOLE_WHITELIST_IPS}
|
||||
- _APP_CONSOLE_HOSTNAMES=${_APP_CONSOLE_HOSTNAMES:-localhost,appwrite.io,*.appwrite.io}
|
||||
- _APP_CONSOLE_HOSTNAMES=${_APP_CONSOLE_HOSTNAMES}
|
||||
- _APP_SYSTEM_EMAIL_NAME=${_APP_SYSTEM_EMAIL_NAME:-Appwrite}
|
||||
- _APP_SYSTEM_EMAIL_ADDRESS=${_APP_SYSTEM_EMAIL_ADDRESS:-team@appwrite.io}
|
||||
- _APP_SYSTEM_TEAM_EMAIL=${_APP_SYSTEM_TEAM_EMAIL:-team@appwrite.io}
|
||||
@@ -33,11 +40,16 @@ services:
|
||||
- _APP_OPTIONS_ABUSE=${_APP_OPTIONS_ABUSE:-enabled}
|
||||
- _APP_OPTIONS_ROUTER_PROTECTION=${_APP_OPTIONS_ROUTER_PROTECTION:-disabled}
|
||||
- _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled}
|
||||
- _APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=${_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS:-disabled}
|
||||
- _APP_OPTIONS_ROUTER_FORCE_HTTPS=${_APP_OPTIONS_ROUTER_FORCE_HTTPS:-disabled}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_FUNCTIONS=$SERVICE_URL_APPWRITE
|
||||
- _APP_CONSOLE_DOMAIN=${_APP_CONSOLE_DOMAIN}
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DOMAIN_TARGET_CNAME=${_APP_DOMAIN_TARGET_CNAME:-localhost}
|
||||
- _APP_DOMAIN_TARGET_AAAA=${_APP_DOMAIN_TARGET_AAAA:-::1}
|
||||
- _APP_DOMAIN_TARGET_A=${_APP_DOMAIN_TARGET_A:-127.0.0.1}
|
||||
- _APP_DOMAIN_TARGET_CAA=${_APP_DOMAIN_TARGET_CAA}
|
||||
- _APP_DOMAIN_FUNCTIONS=${_APP_DOMAIN_FUNCTIONS:-functions.$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DNS=${_APP_DNS}
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
- _APP_REDIS_USER=${_APP_REDIS_USER}
|
||||
@@ -63,6 +75,7 @@ services:
|
||||
- _APP_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET}
|
||||
- _APP_STORAGE_S3_REGION=${_APP_STORAGE_S3_REGION:-us-east-1}
|
||||
- _APP_STORAGE_S3_BUCKET=${_APP_STORAGE_S3_BUCKET}
|
||||
- _APP_STORAGE_S3_ENDPOINT=${_APP_STORAGE_S3_ENDPOINT}
|
||||
- _APP_STORAGE_DO_SPACES_ACCESS_KEY=${_APP_STORAGE_DO_SPACES_ACCESS_KEY}
|
||||
- _APP_STORAGE_DO_SPACES_SECRET=${_APP_STORAGE_DO_SPACES_SECRET}
|
||||
- _APP_STORAGE_DO_SPACES_REGION=${_APP_STORAGE_DO_SPACES_REGION:-us-east-1}
|
||||
@@ -79,21 +92,26 @@ services:
|
||||
- _APP_STORAGE_WASABI_SECRET=${_APP_STORAGE_WASABI_SECRET}
|
||||
- _APP_STORAGE_WASABI_REGION=${_APP_STORAGE_WASABI_REGION:-eu-central-1}
|
||||
- _APP_STORAGE_WASABI_BUCKET=${_APP_STORAGE_WASABI_BUCKET}
|
||||
- _APP_FUNCTIONS_SIZE_LIMIT=${_APP_FUNCTIONS_SIZE_LIMIT:-30000000}
|
||||
- _APP_COMPUTE_SIZE_LIMIT=${_APP_COMPUTE_SIZE_LIMIT:-30000000}
|
||||
- _APP_FUNCTIONS_TIMEOUT=${_APP_FUNCTIONS_TIMEOUT:-900}
|
||||
- _APP_FUNCTIONS_BUILD_TIMEOUT=${_APP_FUNCTIONS_BUILD_TIMEOUT:-900}
|
||||
- _APP_FUNCTIONS_CPUS=${_APP_FUNCTIONS_CPUS:-0}
|
||||
- _APP_FUNCTIONS_MEMORY=${_APP_FUNCTIONS_MEMORY:-0}
|
||||
- _APP_SITES_TIMEOUT=${_APP_SITES_TIMEOUT:-900}
|
||||
- _APP_COMPUTE_BUILD_TIMEOUT=${_APP_COMPUTE_BUILD_TIMEOUT:-900}
|
||||
- _APP_COMPUTE_CPUS=${_APP_COMPUTE_CPUS:-0}
|
||||
- _APP_COMPUTE_MEMORY=${_APP_COMPUTE_MEMORY:-0}
|
||||
- _APP_FUNCTIONS_RUNTIMES=${_APP_FUNCTIONS_RUNTIMES:-node-20.0,php-8.2,python-3.11,ruby-3.2}
|
||||
- _APP_SITES_RUNTIMES=${_APP_SITES_RUNTIMES}
|
||||
- _APP_DOMAIN_SITES=${_APP_DOMAIN_SITES:-sites.$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_EXECUTOR_HOST=${_APP_EXECUTOR_HOST:-http://appwrite-executor/v1}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_MAINTENANCE_INTERVAL=${_APP_MAINTENANCE_INTERVAL:-86400}
|
||||
- _APP_MAINTENANCE_DELAY=${_APP_MAINTENANCE_DELAY}
|
||||
- _APP_MAINTENANCE_START_TIME=${_APP_MAINTENANCE_START_TIME}
|
||||
- _APP_MAINTENANCE_RETENTION_EXECUTION=${_APP_MAINTENANCE_RETENTION_EXECUTION:-1209600}
|
||||
- _APP_MAINTENANCE_RETENTION_CACHE=${_APP_MAINTENANCE_RETENTION_CACHE:-2592000}
|
||||
- _APP_MAINTENANCE_RETENTION_ABUSE=${_APP_MAINTENANCE_RETENTION_ABUSE:-86400}
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT=${_APP_MAINTENANCE_RETENTION_AUDIT:-1209600}
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE=${_APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE}
|
||||
- _APP_MAINTENANCE_RETENTION_USAGE_HOURLY=${_APP_MAINTENANCE_RETENTION_USAGE_HOURLY:-8640000}
|
||||
- _APP_MAINTENANCE_RETENTION_SCHEDULES=${_APP_MAINTENANCE_RETENTION_SCHEDULES:-86400}
|
||||
- _APP_SMS_PROVIDER=${_APP_SMS_PROVIDER}
|
||||
@@ -110,25 +128,37 @@ services:
|
||||
- _APP_MIGRATIONS_FIREBASE_CLIENT_ID=${_APP_MIGRATIONS_FIREBASE_CLIENT_ID}
|
||||
- _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET=${_APP_MIGRATIONS_FIREBASE_CLIENT_SECRET}
|
||||
- _APP_ASSISTANT_OPENAI_API_KEY=${_APP_ASSISTANT_OPENAI_API_KEY}
|
||||
- _APP_MESSAGE_SMS_TEST_DSN=${_APP_MESSAGE_SMS_TEST_DSN}
|
||||
- _APP_MESSAGE_EMAIL_TEST_DSN=${_APP_MESSAGE_EMAIL_TEST_DSN}
|
||||
- _APP_MESSAGE_PUSH_TEST_DSN=${_APP_MESSAGE_PUSH_TEST_DSN}
|
||||
- _APP_CONSOLE_COUNTRIES_DENYLIST=${_APP_CONSOLE_COUNTRIES_DENYLIST}
|
||||
- _APP_EXPERIMENT_LOGGING_PROVIDER=${_APP_EXPERIMENT_LOGGING_PROVIDER}
|
||||
- _APP_EXPERIMENT_LOGGING_CONFIG=${_APP_EXPERIMENT_LOGGING_CONFIG}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
- _APP_DATABASE_SHARED_TABLES_V1=${_APP_DATABASE_SHARED_TABLES_V1}
|
||||
- _APP_DATABASE_SHARED_NAMESPACE=${_APP_DATABASE_SHARED_NAMESPACE}
|
||||
- _APP_FUNCTIONS_CREATION_ABUSE_LIMIT=${_APP_FUNCTIONS_CREATION_ABUSE_LIMIT}
|
||||
- _APP_CUSTOM_DOMAIN_DENY_LIST=${_APP_CUSTOM_DOMAIN_DENY_LIST}
|
||||
|
||||
appwrite-console:
|
||||
image: appwrite/console:5.0.12
|
||||
image: appwrite/console:6.1.28
|
||||
container_name: appwrite-console
|
||||
environment:
|
||||
- SERVICE_FQDN_APPWRITE=/console
|
||||
- SERVICE_URL_APPWRITE=/console
|
||||
|
||||
appwrite-realtime:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: realtime
|
||||
container_name: appwrite-realtime
|
||||
depends_on:
|
||||
- appwrite-mariadb
|
||||
- appwrite-redis
|
||||
environment:
|
||||
- SERVICE_FQDN_APPWRITE=/v1/realtime
|
||||
- SERVICE_URL_APPWRITE=/v1/realtime
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_OPTIONS_ABUSE=${_APP_OPTIONS_ABUSE:-enabled}
|
||||
- _APP_OPTIONS_ROUTER_PROTECTION=${_APP_OPTIONS_ROUTER_PROTECTION:-disabled}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
@@ -141,9 +171,10 @@ services:
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-audits:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-audits
|
||||
container_name: appwrite-worker-audits
|
||||
depends_on:
|
||||
@@ -163,9 +194,10 @@ services:
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-webhooks:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-webhooks
|
||||
container_name: appwrite-worker-webhooks
|
||||
depends_on:
|
||||
@@ -187,9 +219,11 @@ services:
|
||||
- _APP_REDIS_USER=${_APP_REDIS_USER}
|
||||
- _APP_REDIS_PASS=${_APP_REDIS_PASS}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_WEBHOOK_MAX_FAILED_ATTEMPTS=${_APP_WEBHOOK_MAX_FAILED_ATTEMPTS}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-deletes:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-deletes
|
||||
container_name: appwrite-worker-deletes
|
||||
depends_on:
|
||||
@@ -199,6 +233,7 @@ services:
|
||||
- appwrite-uploads:/storage/uploads:rw
|
||||
- appwrite-cache:/storage/cache:rw
|
||||
- appwrite-functions:/storage/functions:rw
|
||||
- appwrite-sites:/storage/sites:rw
|
||||
- appwrite-builds:/storage/builds:rw
|
||||
- appwrite-certificates:/storage/certificates:rw
|
||||
environment:
|
||||
@@ -215,10 +250,11 @@ services:
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local}
|
||||
- _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY:-local}
|
||||
- _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY}
|
||||
- _APP_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET}
|
||||
- _APP_STORAGE_S3_REGION=${_APP_STORAGE_S3_REGION:-us-east-1}
|
||||
- _APP_STORAGE_S3_BUCKET=${_APP_STORAGE_S3_BUCKET}
|
||||
- _APP_STORAGE_S3_ENDPOINT=${_APP_STORAGE_S3_ENDPOINT}
|
||||
- _APP_STORAGE_DO_SPACES_ACCESS_KEY=${_APP_STORAGE_DO_SPACES_ACCESS_KEY}
|
||||
- _APP_STORAGE_DO_SPACES_SECRET=${_APP_STORAGE_DO_SPACES_SECRET}
|
||||
- _APP_STORAGE_DO_SPACES_REGION=${_APP_STORAGE_DO_SPACES_REGION:-us-east-1}
|
||||
@@ -238,12 +274,14 @@ services:
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_EXECUTOR_HOST=${_APP_EXECUTOR_HOST:-http://appwrite-executor/v1}
|
||||
- _APP_MAINTENANCE_RETENTION_ABUSE=${_APP_MAINTENANCE_RETENTION_ABUSE:-86400}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
- _APP_DATABASE_SHARED_TABLES_V1=${_APP_DATABASE_SHARED_TABLES_V1}
|
||||
- _APP_EMAIL_CERTIFICATES=${_APP_EMAIL_CERTIFICATES}
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT=${_APP_MAINTENANCE_RETENTION_AUDIT:-1209600}
|
||||
- _APP_MAINTENANCE_RETENTION_EXECUTION=${_APP_MAINTENANCE_RETENTION_EXECUTION:-1209600}
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE=${_APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE}
|
||||
|
||||
appwrite-worker-databases:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-databases
|
||||
container_name: appwrite-worker-databases
|
||||
depends_on:
|
||||
@@ -263,9 +301,12 @@ services:
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_WORKERS_NUM=${_APP_WORKERS_NUM}
|
||||
- _APP_QUEUE_NAME=${_APP_QUEUE_NAME}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-builds:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-builds
|
||||
container_name: appwrite-worker-builds
|
||||
depends_on:
|
||||
@@ -273,7 +314,9 @@ services:
|
||||
- appwrite-mariadb
|
||||
volumes:
|
||||
- appwrite-functions:/storage/functions:rw
|
||||
- appwrite-sites:/storage/sites:rw
|
||||
- appwrite-builds:/storage/builds:rw
|
||||
- appwrite-uploads:/storage/uploads:rw
|
||||
environment:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
@@ -294,18 +337,20 @@ services:
|
||||
- _APP_VCS_GITHUB_PRIVATE_KEY=${_APP_VCS_GITHUB_PRIVATE_KEY}
|
||||
- _APP_VCS_GITHUB_APP_ID=${_APP_VCS_GITHUB_APP_ID}
|
||||
- _APP_FUNCTIONS_TIMEOUT=${_APP_FUNCTIONS_TIMEOUT:-900}
|
||||
- _APP_FUNCTIONS_BUILD_TIMEOUT=${_APP_FUNCTIONS_BUILD_TIMEOUT:-900}
|
||||
- _APP_FUNCTIONS_CPUS=${_APP_FUNCTIONS_CPUS:-0}
|
||||
- _APP_FUNCTIONS_MEMORY=${_APP_FUNCTIONS_MEMORY:-0}
|
||||
- _APP_FUNCTIONS_SIZE_LIMIT=${_APP_FUNCTIONS_SIZE_LIMIT:-30000000}
|
||||
- _APP_SITES_TIMEOUT=${_APP_SITES_TIMEOUT:-900}
|
||||
- _APP_COMPUTE_BUILD_TIMEOUT=${_APP_COMPUTE_BUILD_TIMEOUT:-900}
|
||||
- _APP_COMPUTE_CPUS=${_APP_COMPUTE_CPUS:-0}
|
||||
- _APP_COMPUTE_MEMORY=${_APP_COMPUTE_MEMORY:-0}
|
||||
- _APP_COMPUTE_SIZE_LIMIT=${_APP_COMPUTE_SIZE_LIMIT:-30000000}
|
||||
- _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled}
|
||||
- _APP_OPTIONS_FUNCTIONS_FORCE_HTTPS=${_APP_OPTIONS_FUNCTIONS_FORCE_HTTPS:-disabled}
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_OPTIONS_ROUTER_FORCE_HTTPS=${_APP_OPTIONS_ROUTER_FORCE_HTTPS:-disabled}
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local}
|
||||
- _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY:-local}
|
||||
- _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY}
|
||||
- _APP_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET}
|
||||
- _APP_STORAGE_S3_REGION=${_APP_STORAGE_S3_REGION:-us-east-1}
|
||||
- _APP_STORAGE_S3_BUCKET=${_APP_STORAGE_S3_BUCKET}
|
||||
- _APP_STORAGE_S3_ENDPOINT=${_APP_STORAGE_S3_ENDPOINT}
|
||||
- _APP_STORAGE_DO_SPACES_ACCESS_KEY=${_APP_STORAGE_DO_SPACES_ACCESS_KEY}
|
||||
- _APP_STORAGE_DO_SPACES_SECRET=${_APP_STORAGE_DO_SPACES_SECRET}
|
||||
- _APP_STORAGE_DO_SPACES_REGION=${_APP_STORAGE_DO_SPACES_REGION:-us-east-1}
|
||||
@@ -322,9 +367,13 @@ services:
|
||||
- _APP_STORAGE_WASABI_SECRET=${_APP_STORAGE_WASABI_SECRET}
|
||||
- _APP_STORAGE_WASABI_REGION=${_APP_STORAGE_WASABI_REGION:-eu-central-1}
|
||||
- _APP_STORAGE_WASABI_BUCKET=${_APP_STORAGE_WASABI_BUCKET}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
- _APP_DOMAIN_SITES=${_APP_DOMAIN_SITES:-sites.$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_BROWSER_HOST=${_APP_BROWSER_HOST}
|
||||
- _APP_CONSOLE_DOMAIN=${_APP_CONSOLE_DOMAIN}
|
||||
|
||||
appwrite-worker-certificates:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-certificates
|
||||
container_name: appwrite-worker-certificates
|
||||
depends_on:
|
||||
@@ -337,11 +386,14 @@ services:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_FUNCTIONS=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DOMAIN_TARGET_CNAME=${_APP_DOMAIN_TARGET_CNAME}
|
||||
- _APP_DOMAIN_TARGET_AAAA=${_APP_DOMAIN_TARGET_AAAA}
|
||||
- _APP_DOMAIN_TARGET_A=${_APP_DOMAIN_TARGET_A}
|
||||
- _APP_DOMAIN_TARGET_CAA=${_APP_DOMAIN_TARGET_CAA}
|
||||
- _APP_DOMAIN_FUNCTIONS=${_APP_DOMAIN_FUNCTIONS:-functions.$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DNS=${_APP_DNS}
|
||||
- _APP_EMAIL_CERTIFICATES=${_APP_EMAIL_CERTIFICATES:-enabled}
|
||||
- _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io}
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
- _APP_REDIS_USER=${_APP_REDIS_USER}
|
||||
@@ -352,9 +404,10 @@ services:
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-functions:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-functions
|
||||
container_name: appwrite-worker-functions
|
||||
depends_on:
|
||||
@@ -365,7 +418,7 @@ services:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled}
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
@@ -377,22 +430,26 @@ services:
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_FUNCTIONS_TIMEOUT=${_APP_FUNCTIONS_TIMEOUT:-900}
|
||||
- _APP_FUNCTIONS_BUILD_TIMEOUT=${_APP_FUNCTIONS_BUILD_TIMEOUT:-900}
|
||||
- _APP_FUNCTIONS_CPUS=${_APP_FUNCTIONS_CPUS:-0}
|
||||
- _APP_FUNCTIONS_MEMORY=${_APP_FUNCTIONS_MEMORY:-0}
|
||||
- _APP_SITES_TIMEOUT=${_APP_SITES_TIMEOUT:-900}
|
||||
- _APP_COMPUTE_BUILD_TIMEOUT=${_APP_COMPUTE_BUILD_TIMEOUT:-900}
|
||||
- _APP_COMPUTE_CPUS=${_APP_COMPUTE_CPUS:-0}
|
||||
- _APP_COMPUTE_MEMORY=${_APP_COMPUTE_MEMORY:-0}
|
||||
- _APP_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_EXECUTOR_HOST=${_APP_EXECUTOR_HOST:-http://appwrite-executor/v1}
|
||||
- _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled}
|
||||
- _APP_DOCKER_HUB_USERNAME=${_APP_DOCKER_HUB_USERNAME}
|
||||
- _APP_DOCKER_HUB_PASSWORD=${_APP_DOCKER_HUB_PASSWORD}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_LOGGING_PROVIDER=${_APP_LOGGING_PROVIDER}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-mails:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-mails
|
||||
container_name: appwrite-worker-mails
|
||||
depends_on:
|
||||
- appwrite-redis
|
||||
- appwrite-mariadb
|
||||
environment:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
@@ -414,10 +471,12 @@ services:
|
||||
- _APP_SMTP_USERNAME=${_APP_SMTP_USERNAME}
|
||||
- _APP_SMTP_PASSWORD=${_APP_SMTP_PASSWORD}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_OPTIONS_FORCE_HTTPS=${_APP_OPTIONS_FORCE_HTTPS:-disabled}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-messaging:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-messaging
|
||||
container_name: appwrite-worker-messaging
|
||||
volumes:
|
||||
@@ -440,11 +499,13 @@ services:
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_SMS_FROM=${_APP_SMS_FROM}
|
||||
- _APP_SMS_PROVIDER=${_APP_SMS_PROVIDER}
|
||||
- _APP_SMS_PROJECTS_DENY_LIST=${_APP_SMS_PROJECTS_DENY_LIST}
|
||||
- _APP_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local}
|
||||
- _APP_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY}
|
||||
- _APP_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET}
|
||||
- _APP_STORAGE_S3_REGION=${_APP_STORAGE_S3_REGION:-us-east-1}
|
||||
- _APP_STORAGE_S3_BUCKET=${_APP_STORAGE_S3_BUCKET}
|
||||
- _APP_STORAGE_S3_ENDPOINT=${_APP_STORAGE_S3_ENDPOINT}
|
||||
- _APP_STORAGE_DO_SPACES_ACCESS_KEY=${_APP_STORAGE_DO_SPACES_ACCESS_KEY}
|
||||
- _APP_STORAGE_DO_SPACES_SECRET=${_APP_STORAGE_DO_SPACES_SECRET}
|
||||
- _APP_STORAGE_DO_SPACES_REGION=${_APP_STORAGE_DO_SPACES_REGION:-us-east-1}
|
||||
@@ -461,19 +522,26 @@ services:
|
||||
- _APP_STORAGE_WASABI_SECRET=${_APP_STORAGE_WASABI_SECRET}
|
||||
- _APP_STORAGE_WASABI_REGION=${_APP_STORAGE_WASABI_REGION:-eu-central-1}
|
||||
- _APP_STORAGE_WASABI_BUCKET=${_APP_STORAGE_WASABI_BUCKET}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-migrations:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-migrations
|
||||
container_name: appwrite-worker-migrations
|
||||
volumes:
|
||||
- appwrite-imports:/storage/imports:rw
|
||||
depends_on:
|
||||
- appwrite-mariadb
|
||||
environment:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DOMAIN_TARGET_CNAME=${_APP_DOMAIN_TARGET_CNAME}
|
||||
- _APP_DOMAIN_TARGET_AAAA=${_APP_DOMAIN_TARGET_AAAA}
|
||||
- _APP_DOMAIN_TARGET_A=${_APP_DOMAIN_TARGET_A}
|
||||
- _APP_DOMAIN_TARGET_CAA=${_APP_DOMAIN_TARGET_CAA}
|
||||
- _APP_DNS=${_APP_DNS}
|
||||
- _APP_EMAIL_SECURITY=${_APP_EMAIL_SECURITY:-certs@appwrite.io}
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
@@ -487,9 +555,10 @@ services:
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_MIGRATIONS_FIREBASE_CLIENT_ID=${_APP_MIGRATIONS_FIREBASE_CLIENT_ID}
|
||||
- _APP_MIGRATIONS_FIREBASE_CLIENT_SECRET=${_APP_MIGRATIONS_FIREBASE_CLIENT_SECRET}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-task-maintenance:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: maintenance
|
||||
container_name: appwrite-task-maintenance
|
||||
depends_on:
|
||||
@@ -497,9 +566,13 @@ services:
|
||||
environment:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_DOMAIN=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_TARGET=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN_FUNCTIONS=$SERVICE_URL_APPWRITE
|
||||
- _APP_DOMAIN=${_APP_DOMAIN:-$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DOMAIN_TARGET_CNAME=${_APP_DOMAIN_TARGET_CNAME}
|
||||
- _APP_DOMAIN_TARGET_AAAA=${_APP_DOMAIN_TARGET_AAAA}
|
||||
- _APP_DOMAIN_TARGET_A=${_APP_DOMAIN_TARGET_A}
|
||||
- _APP_DOMAIN_TARGET_CAA=${_APP_DOMAIN_TARGET_CAA}
|
||||
- _APP_DOMAIN_FUNCTIONS=${_APP_DOMAIN_FUNCTIONS:-functions.$SERVICE_FQDN_APPWRITE}
|
||||
- _APP_DNS=${_APP_DNS}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
@@ -510,19 +583,21 @@ services:
|
||||
- _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite}
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_MAINTENANCE_INTERVAL=${_APP_MAINTENANCE_INTERVAL}
|
||||
- _APP_MAINTENANCE_RETENTION_EXECUTION=${_APP_MAINTENANCE_RETENTION_EXECUTION}
|
||||
- _APP_MAINTENANCE_INTERVAL=${_APP_MAINTENANCE_INTERVAL:-86400}
|
||||
- _APP_MAINTENANCE_RETENTION_EXECUTION=${_APP_MAINTENANCE_RETENTION_EXECUTION:-1209600}
|
||||
- _APP_MAINTENANCE_RETENTION_CACHE=${_APP_MAINTENANCE_RETENTION_CACHE:-2592000}
|
||||
- _APP_MAINTENANCE_RETENTION_ABUSE=${_APP_MAINTENANCE_RETENTION_ABUSE:-86400}
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT=${_APP_MAINTENANCE_RETENTION_AUDIT:-1209600}
|
||||
- _APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE=${_APP_MAINTENANCE_RETENTION_AUDIT_CONSOLE}
|
||||
- _APP_MAINTENANCE_RETENTION_USAGE_HOURLY=${_APP_MAINTENANCE_RETENTION_USAGE_HOURLY:-8640000}
|
||||
- _APP_MAINTENANCE_RETENTION_SCHEDULES=${_APP_MAINTENANCE_RETENTION_SCHEDULES:-86400}
|
||||
- _APP_MAINTENANCE_START_TIME=${_APP_MAINTENANCE_START_TIME}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-worker-usage:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
entrypoint: worker-usage
|
||||
container_name: appwrite-worker-usage
|
||||
restart: unless-stopped
|
||||
appwrite-task-stats-resources:
|
||||
image: appwrite/appwrite:1.7.4
|
||||
container_name: appwrite-task-stats-resources
|
||||
entrypoint: stats-resources
|
||||
depends_on:
|
||||
- appwrite-redis
|
||||
- appwrite-mariadb
|
||||
@@ -541,12 +616,37 @@ services:
|
||||
- _APP_REDIS_PASS=${_APP_REDIS_PASS}
|
||||
- _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_USAGE_AGGREGATION_INTERVAL=${_APP_USAGE_AGGREGATION_INTERVAL:-30}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
- _APP_STATS_RESOURCES_INTERVAL=${_APP_STATS_RESOURCES_INTERVAL}
|
||||
|
||||
appwrite-worker-usage-dump:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
entrypoint: worker-usage-dump
|
||||
container_name: appwrite-worker-usage-dump
|
||||
appwrite-worker-stats-resources:
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-stats-resources
|
||||
container_name: appwrite-worker-stats-resources
|
||||
depends_on:
|
||||
- appwrite-redis
|
||||
- appwrite-mariadb
|
||||
environment:
|
||||
- _APP_ENV=${_APP_ENV:-production}
|
||||
- _APP_WORKER_PER_CORE=${_APP_WORKER_PER_CORE:-6}
|
||||
- _APP_OPENSSL_KEY_V1=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- _APP_DB_HOST=${_APP_DB_HOST:-appwrite-mariadb}
|
||||
- _APP_DB_PORT=${_APP_DB_PORT:-3306}
|
||||
- _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite}
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_REDIS_HOST=${_APP_REDIS_HOST:-appwrite-redis}
|
||||
- _APP_REDIS_PORT=${_APP_REDIS_PORT:-6379}
|
||||
- _APP_REDIS_USER=${_APP_REDIS_USER}
|
||||
- _APP_REDIS_PASS=${_APP_REDIS_PASS}
|
||||
- _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_STATS_RESOURCES_INTERVAL=${_APP_STATS_RESOURCES_INTERVAL}
|
||||
|
||||
appwrite-worker-stats-usage:
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: worker-stats-usage
|
||||
container_name: appwrite-worker-stats-usage
|
||||
depends_on:
|
||||
- appwrite-redis
|
||||
- appwrite-mariadb
|
||||
@@ -566,9 +666,10 @@ services:
|
||||
- _APP_USAGE_STATS=${_APP_USAGE_STATS:-enabled}
|
||||
- _APP_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- _APP_USAGE_AGGREGATION_INTERVAL=${_APP_USAGE_AGGREGATION_INTERVAL:-30}
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-task-scheduler-functions:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: schedule-functions
|
||||
container_name: appwrite-task-scheduler-functions
|
||||
depends_on:
|
||||
@@ -587,9 +688,10 @@ services:
|
||||
- _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite}
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-task-scheduler-executions:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: schedule-executions
|
||||
container_name: appwrite-task-scheduler-executions
|
||||
depends_on:
|
||||
@@ -608,9 +710,10 @@ services:
|
||||
- _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite}
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-task-scheduler-messages:
|
||||
image: appwrite/appwrite:1.6.0
|
||||
image: appwrite/appwrite:1.7.4
|
||||
entrypoint: schedule-messages
|
||||
container_name: appwrite-task-scheduler-messages
|
||||
depends_on:
|
||||
@@ -629,40 +732,50 @@ services:
|
||||
- _APP_DB_SCHEMA=${_APP_DB_SCHEMA:-appwrite}
|
||||
- _APP_DB_USER=$SERVICE_USER_MARIADB
|
||||
- _APP_DB_PASS=$SERVICE_PASSWORD_MARIADB
|
||||
- _APP_DATABASE_SHARED_TABLES=${_APP_DATABASE_SHARED_TABLES}
|
||||
|
||||
appwrite-assistant:
|
||||
image: appwrite/assistant:0.4.0
|
||||
image: appwrite/assistant:0.8.3
|
||||
container_name: appwrite-assistant
|
||||
environment:
|
||||
- _APP_ASSISTANT_OPENAI_API_KEY=${_APP_ASSISTANT_OPENAI_API_KEY}
|
||||
|
||||
appwrite-browser:
|
||||
image: appwrite/browser:0.2.4
|
||||
container_name: appwrite-browser
|
||||
hostname: appwrite-browser
|
||||
|
||||
openruntimes-executor:
|
||||
container_name: openruntimes-executor
|
||||
hostname: appwrite-executor
|
||||
stop_signal: SIGINT
|
||||
image: openruntimes/executor:0.6.11
|
||||
image: openruntimes/executor:0.8.6
|
||||
networks:
|
||||
- runtimes
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
- appwrite-builds:/storage/builds:rw
|
||||
- appwrite-functions:/storage/functions:rw
|
||||
- appwrite-sites:/storage/sites:rw
|
||||
- /tmp:/tmp:rw
|
||||
environment:
|
||||
- OPR_EXECUTOR_INACTIVE_TRESHOLD=${_APP_FUNCTIONS_INACTIVE_THRESHOLD}
|
||||
- OPR_EXECUTOR_MAINTENANCE_INTERVAL=${_APP_FUNCTIONS_MAINTENANCE_INTERVAL}
|
||||
- OPR_EXECUTOR_NETWORK=${_APP_FUNCTIONS_RUNTIMES_NETWORK:-runtimes}
|
||||
- OPR_EXECUTOR_IMAGE_PULL=disabled
|
||||
- OPR_EXECUTOR_INACTIVE_TRESHOLD=${_APP_COMPUTE_INACTIVE_THRESHOLD}
|
||||
- OPR_EXECUTOR_MAINTENANCE_INTERVAL=${_APP_COMPUTE_MAINTENANCE_INTERVAL}
|
||||
- OPR_EXECUTOR_NETWORK=${_APP_COMPUTE_RUNTIMES_NETWORK:-runtimes}
|
||||
- OPR_EXECUTOR_DOCKER_HUB_USERNAME=${_APP_DOCKER_HUB_USERNAME}
|
||||
- OPR_EXECUTOR_DOCKER_HUB_PASSWORD=${_APP_DOCKER_HUB_PASSWORD}
|
||||
- OPR_EXECUTOR_ENV=${_APP_ENV:-production}
|
||||
- OPR_EXECUTOR_RUNTIMES=${_APP_FUNCTIONS_RUNTIMES}
|
||||
- OPR_EXECUTOR_RUNTIMES=${_APP_FUNCTIONS_RUNTIMES},${_APP_SITES_RUNTIMES}
|
||||
- OPR_EXECUTOR_SECRET=$SERVICE_PASSWORD_64_APPWRITE
|
||||
- OPR_EXECUTOR_RUNTIME_VERSIONS=v5
|
||||
- OPR_EXECUTOR_LOGGING_CONFIG=${_APP_LOGGING_CONFIG}
|
||||
- OPR_EXECUTOR_STORAGE_DEVICE=${_APP_STORAGE_DEVICE:-local}
|
||||
- OPR_EXECUTOR_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY:-local}
|
||||
- OPR_EXECUTOR_STORAGE_S3_ACCESS_KEY=${_APP_STORAGE_S3_ACCESS_KEY}
|
||||
- OPR_EXECUTOR_STORAGE_S3_SECRET=${_APP_STORAGE_S3_SECRET}
|
||||
- OPR_EXECUTOR_STORAGE_S3_REGION=${_APP_STORAGE_S3_REGION}
|
||||
- OPR_EXECUTOR_STORAGE_S3_BUCKET=${_APP_STORAGE_S3_BUCKET}
|
||||
- OPR_EXECUTOR_STORAGE_S3_ENDPOINT=${_APP_STORAGE_S3_ENDPOINT}
|
||||
- OPR_EXECUTOR_STORAGE_DO_SPACES_ACCESS_KEY=${_APP_STORAGE_DO_SPACES_ACCESS_KEY}
|
||||
- OPR_EXECUTOR_STORAGE_DO_SPACES_SECRET=${_APP_STORAGE_DO_SPACES_SECRET}
|
||||
- OPR_EXECUTOR_STORAGE_DO_SPACES_REGION=${_APP_STORAGE_DO_SPACES_REGION}
|
||||
@@ -703,6 +816,7 @@ services:
|
||||
--maxmemory-samples 5
|
||||
volumes:
|
||||
- appwrite-redis:/data:rw
|
||||
|
||||
networks:
|
||||
runtimes:
|
||||
name: runtimes
|
||||
@@ -712,7 +826,9 @@ volumes:
|
||||
appwrite-redis:
|
||||
appwrite-cache:
|
||||
appwrite-uploads:
|
||||
appwrite-imports:
|
||||
appwrite-certificates:
|
||||
appwrite-functions:
|
||||
appwrite-sites:
|
||||
appwrite-builds:
|
||||
appwrite-config:
|
||||
@@ -1,14 +1,16 @@
|
||||
# documentation: https://docs.argilla.io/latest/
|
||||
# slogan: Argilla is a collaboration tool for AI engineers and domain experts who need to build high-quality datasets for their projects.
|
||||
# category: ai
|
||||
# tags: workflow, orchestration, data-pipeline, python, argilla, ai, elasticsearch, datasets, data, machine-learning, data-science, nlp
|
||||
# logo: svgs/argilla.png
|
||||
# port: 6900
|
||||
# category: productivity
|
||||
|
||||
services:
|
||||
argilla:
|
||||
image: "argilla/argilla-server:v2.2.0"
|
||||
environment:
|
||||
- SERVICE_FQDN_ARGILLA_6900
|
||||
- SERVICE_URL_ARGILLA_6900
|
||||
- ARGILLA_HOME_PATH=/var/lib/argilla
|
||||
- ARGILLA_ELASTICSEARCH=http://elasticsearch:9200
|
||||
- ARGILLA_DATABASE_URL=postgresql+asyncpg://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.audiobookshelf.org/
|
||||
# slogan: Self-hosted audiobook, ebook, and podcast server
|
||||
# category: media
|
||||
# tags: audiobooks, ebooks, podcasts, server, self-hosted
|
||||
# logo: svgs/audiobookshelf.svg
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
audiobookshelf:
|
||||
image: ghcr.io/advplyr/audiobookshelf:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_AUDIOBOOKSHELF_80
|
||||
- SERVICE_URL_AUDIOBOOKSHELF_80
|
||||
- TZ=${TIMEZONE:-America/Toronto}
|
||||
volumes:
|
||||
- audiobookshelf-audiobooks:/audiobooks
|
||||
@@ -16,7 +17,7 @@ services:
|
||||
- audiobookshelf-config:/config
|
||||
- audiobookshelf-metadata:/metadata
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "curl -f http://localhost:80/ping || exit 1"]
|
||||
test: ["CMD-SHELL", "wget --quiet --tries=1 --timeout=5 http://localhost:80/ping -O /dev/null || exit 1"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
@@ -1,16 +1,17 @@
|
||||
# documentation: https://docs.goauthentik.io/docs/installation/docker-compose
|
||||
# slogan: An open-source Identity Provider, focused on flexibility and versatility.
|
||||
# category: auth
|
||||
# tags: identity,login,user,oauth,openid,oidc,authentication,saml,auth0,okta
|
||||
# logo: svgs/authentik.png
|
||||
# port: 9000
|
||||
|
||||
services:
|
||||
authentik-server:
|
||||
image: ghcr.io/goauthentik/server:${AUTHENTIK_TAG:-2025.4.1}
|
||||
image: ghcr.io/goauthentik/server:${AUTHENTIK_TAG:-2025.6.4}
|
||||
restart: unless-stopped
|
||||
command: server
|
||||
environment:
|
||||
- SERVICE_FQDN_AUTHENTIKSERVER_9000
|
||||
- SERVICE_URL_AUTHENTIKSERVER_9000
|
||||
- AUTHENTIK_REDIS__HOST=${REDIS_HOST:-redis}
|
||||
- AUTHENTIK_POSTGRESQL__HOST=${POSTGRES_HOST:-postgresql}
|
||||
- AUTHENTIK_POSTGRESQL__USER=${SERVICE_USER_POSTGRESQL}
|
||||
@@ -35,7 +36,7 @@ services:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
authentik-worker:
|
||||
image: ghcr.io/goauthentik/server:${AUTHENTIK_TAG:-2025.4.1}
|
||||
image: ghcr.io/goauthentik/server:${AUTHENTIK_TAG:-2025.6.4}
|
||||
restart: unless-stopped
|
||||
command: worker
|
||||
environment:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://docs.azimutt.app/
|
||||
# slogan: Next-Gen ERD: Design, Explore, Document and Analyze your database.
|
||||
# category: productivity
|
||||
# tags: erd, entity-relationship diagram, database tool, database schema, diagram
|
||||
# logo: svgs/azimutt.png
|
||||
# port: 4000
|
||||
@@ -54,8 +55,8 @@ services:
|
||||
image: bytemark/smtp:latest
|
||||
platform: linux/amd64
|
||||
environment:
|
||||
- SERVICE_FQDN_SMTP
|
||||
- RELAY_HOST=$SERVICE_FQDN_SMTP
|
||||
- SERVICE_URL_SMTP
|
||||
- RELAY_HOST=$SERVICE_URL_SMTP
|
||||
- RELAY_PORT=${RELAY_PORT:-587}
|
||||
- RELAY_USERNAME=$SERVICE_EMAIL_SMTP
|
||||
- RELAY_PASSWORD=$SERVICE_PASSWORD_SMTP
|
||||
@@ -75,7 +76,7 @@ services:
|
||||
minio:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_FQDN_AZIMUTT_4000
|
||||
- SERVICE_URL_AZIMUTT_4000
|
||||
- SENTRY=false
|
||||
- PHX_SERVER=true
|
||||
- PHX_HOST=$SERVICE_URL_AZIMUTT
|
||||
@@ -92,7 +93,7 @@ services:
|
||||
- S3_KEY_ID=${S3_KEY_ID}
|
||||
- S3_KEY_SECRET=${S3_KEY_SECRET}
|
||||
- EMAIL_ADAPTER=${EMAIL_ADAPTER:-smtp}
|
||||
- SMTP_RELAY=$SERVICE_FQDN_SMTP
|
||||
- SMTP_RELAY=$SERVICE_URL_SMTP
|
||||
- SMTP_USERNAME=$SERVICE_EMAIL_SMTP
|
||||
- SMTP_PASSWORD=$SERVICE_PASSWORD_SMTP
|
||||
- SMTP_PORT=${SMTP_PORT:-587}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.baby-buddy.net
|
||||
# slogan: It helps parents track their baby's daily activities, growth, and health with ease.
|
||||
# category: productivity
|
||||
# tags: baby, parents, health, growth, activities
|
||||
# logo: svgs/babybuddy.png
|
||||
|
||||
@@ -7,11 +8,11 @@ services:
|
||||
babybuddy:
|
||||
image: lscr.io/linuxserver/babybuddy:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_BABYBUDDY
|
||||
- SERVICE_URL_BABYBUDDY
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Madrid
|
||||
- CSRF_TRUSTED_ORIGINS=$SERVICE_FQDN_BABYBUDDY
|
||||
- CSRF_TRUSTED_ORIGINS=$SERVICE_URL_BABYBUDDY
|
||||
volumes:
|
||||
- babybuddy-config:/config
|
||||
healthcheck:
|
||||
|
||||
@@ -1,23 +1,29 @@
|
||||
# documentation: https://github.com/henrygd/beszel?tab=readme-ov-file#getting-started
|
||||
# slogan: A lightweight server resource monitoring hub with historical data, docker stats, and alerts.
|
||||
# category: monitoring
|
||||
# tags: beszel,monitoring,server,stats,alerts
|
||||
# logo: svgs/beszel.svg
|
||||
# port: 8090
|
||||
|
||||
# When adding a System in the UI, the Host/IP must be beszel-agent (or the container name, ex: beszel-agent-pswog4s8wks4o8osw44cw0k8)
|
||||
# Add the public Key in "Key" env variable below
|
||||
# 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:latest
|
||||
image: 'henrygd/beszel:0.12.10'
|
||||
environment:
|
||||
- SERVICE_FQDN_BESZEL_8090
|
||||
- SERVICE_URL_BESZEL_8090
|
||||
volumes:
|
||||
- beszel_data:/beszel_data
|
||||
|
||||
- 'beszel_data:/beszel_data'
|
||||
- 'beszel_socket:/beszel_socket'
|
||||
beszel-agent:
|
||||
image: henrygd/beszel-agent
|
||||
image: 'henrygd/beszel-agent:0.12.10'
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
- beszel_agent_data:/var/lib/beszel-agent
|
||||
- beszel_socket:/beszel_socket
|
||||
- '/var/run/docker.sock:/var/run/docker.sock:ro'
|
||||
environment:
|
||||
- PORT=45876
|
||||
- KEY=${KEY}
|
||||
- LISTEN=/beszel_socket/beszel.sock
|
||||
- HUB_URL=http://beszel:8090
|
||||
- 'TOKEN=${TOKEN}'
|
||||
- 'KEY=${KEY}'
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# documentation: https://hub.docker.com/r/ruimarinho/bitcoin-core/
|
||||
# slogan: A self-hosted Bitcoin Core full node.
|
||||
# tags: cryptocurrency,node,blockchain,bitcoin
|
||||
# category: backend
|
||||
# tags: cryptocurrency, node, blockchain, bitcoin
|
||||
# logo: svgs/bitcoin.svg
|
||||
|
||||
services:
|
||||
|
||||
@@ -1,36 +1,53 @@
|
||||
# ignore: true
|
||||
# documentation: https://github.com/bluesky-social/pds
|
||||
# slogan: A social network for the decentralized web
|
||||
# tags: pds, bluesky, social, network, decentralized
|
||||
# logo:
|
||||
# slogan: Bluesky PDS (Personal Data Server)
|
||||
# category: backend
|
||||
# tags: bluesky, pds, platform
|
||||
# logo: svgs/bluesky.svg
|
||||
# port: 3000
|
||||
|
||||
services:
|
||||
pds:
|
||||
image: ghcr.io/bluesky-social/pds:0.4
|
||||
image: 'ghcr.io/bluesky-social/pds:0.4.182'
|
||||
volumes:
|
||||
- pds-data:/pds
|
||||
environment:
|
||||
- SERVICE_FQDN_PDS_3000
|
||||
- PDS_JWT_SECRET=${SERVICE_BASE64_PDS}
|
||||
- PDS_ADMIN_PASSWORD=${SERVICE_PASSWORD_PDS}
|
||||
- PDS_ADMIN_EMAIL=${PDS_ADMIN_EMAIL:-admin@example.com}
|
||||
- PDS_DATADIR=${PDS_DATADIR:-/pds}
|
||||
- PDS_BLOBSTORE_DISK_LOCATION=${PDS_DATADIR:-/pds}/blocks
|
||||
- PDS_BLOB_UPLOAD_LIMIT=${PDS_BLOB_UPLOAD_LIMIT:-52428800}
|
||||
- PDS_HOSTNAME=${SERVICE_URL_PDS}
|
||||
- PDS_DID_PLC_URL=https://plc.directory
|
||||
- PDS_BSKY_APP_VIEW_URL=https://api.bsky.app
|
||||
- PDS_BSKY_APP_VIEW_DID=did:web:api.bsky.app
|
||||
- PDS_REPORT_SERVICE_URL=https://mod.bsky.app
|
||||
- PDS_REPORT_SERVICE_DID=did:plc:ar7c4by46qjdydhdevvrndac
|
||||
- PDS_CRAWLERS=https://bsky.network
|
||||
- LOG_ENABLED=${LOG_ENABLED:-true}
|
||||
- PDS_EMAIL_SMTP_URL=${PDS_EMAIL_SMTP_URL:-smtp://localhost:8025}
|
||||
- PDS_EMAIL_FROM_ADDRESS=${PDS_EMAIL_FROM_ADDRESS:-admin@example.com}
|
||||
- PDS_PLC_ROTATION_KEY_K256_PRIVATE_KEY_HEX=${SERVICE_HEX_32_ROTATIONKEY}
|
||||
- SERVICE_URL_PDS_3000
|
||||
- 'PDS_HOSTNAME=${SERVICE_FQDN_PDS_3000}'
|
||||
- 'PDS_JWT_SECRET=${SERVICE_HEX_32_JWTSECRET}'
|
||||
- 'PDS_ADMIN_PASSWORD=${SERVICE_PASSWORD_ADMIN}'
|
||||
- 'PDS_ADMIN_EMAIL=${PDS_ADMIN_EMAIL}'
|
||||
- 'PDS_PLC_ROTATION_KEY_K256_PRIVATE_KEY_HEX=${SERVICE_HEX_32_ROTATIONKEY}'
|
||||
- 'PDS_DATA_DIRECTORY=${PDS_DATA_DIRECTORY:-/pds}'
|
||||
- 'PDS_BLOBSTORE_DISK_LOCATION=${PDS_DATA_DIRECTORY:-/pds}/blocks'
|
||||
- 'PDS_BLOB_UPLOAD_LIMIT=${PDS_BLOB_UPLOAD_LIMIT:-104857600}'
|
||||
- 'PDS_DID_PLC_URL=${PDS_DID_PLC_URL:-https://plc.directory}'
|
||||
- 'PDS_EMAIL_FROM_ADDRESS=${PDS_EMAIL_FROM_ADDRESS}'
|
||||
- 'PDS_EMAIL_SMTP_URL=${PDS_EMAIL_SMTP_URL}'
|
||||
- 'PDS_BSKY_APP_VIEW_URL=${PDS_BSKY_APP_VIEW_URL:-https://api.bsky.app}'
|
||||
- 'PDS_BSKY_APP_VIEW_DID=${PDS_BSKY_APP_VIEW_DID:-did:web:api.bsky.app}'
|
||||
- 'PDS_REPORT_SERVICE_URL=${PDS_REPORT_SERVICE_URL:-https://mod.bsky.app/xrpc/com.atproto.moderation.createReport}'
|
||||
- 'PDS_REPORT_SERVICE_DID=${PDS_REPORT_SERVICE_DID:-did:plc:ar7c4by46qjdydhdevvrndac}'
|
||||
- 'PDS_CRAWLERS=${PDS_CRAWLERS:-https://bsky.network}'
|
||||
- 'LOG_ENABLED=${LOG_ENABLED:-true}'
|
||||
command: |
|
||||
sh -c '
|
||||
set -euo pipefail
|
||||
echo "Installing required packages and pdsadmin..."
|
||||
apk add --no-cache openssl curl bash jq coreutils gnupg util-linux-misc >/dev/null
|
||||
curl -o /usr/local/bin/pdsadmin.sh https://raw.githubusercontent.com/bluesky-social/pds/main/pdsadmin.sh
|
||||
chmod 700 /usr/local/bin/pdsadmin.sh
|
||||
ln -sf /usr/local/bin/pdsadmin.sh /usr/local/bin/pdsadmin
|
||||
echo "Creating an empty pds.env file so pdsadmin works..."
|
||||
touch ${PDS_DATA_DIRECTORY}/pds.env
|
||||
echo "Launching PDS, enjoy!..."
|
||||
exec node --enable-source-maps index.js
|
||||
'
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "--spider", "http://127.0.0.1:3000/xrpc/_health"]
|
||||
interval: 2s
|
||||
test:
|
||||
- CMD
|
||||
- wget
|
||||
- '--spider'
|
||||
- 'http://127.0.0.1:3000/xrpc/_health'
|
||||
interval: 5s
|
||||
timeout: 10s
|
||||
retries: 10
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.bookstackapp.com/docs/
|
||||
# slogan: BookStack is a simple, self-hosted, easy-to-use platform for organising and storing information
|
||||
# category: cms
|
||||
# tags: free-and-open-source,mfa,dark-light-themes,searchable,connected,simple-interface,diagramms,notes
|
||||
# logo: svgs/bookstack.png
|
||||
# port: 80
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
bookstack:
|
||||
image: lscr.io/linuxserver/bookstack:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_BOOKSTACK_80
|
||||
- APP_URL=${SERVICE_FQDN_BOOKSTACK}
|
||||
- SERVICE_URL_BOOKSTACK_80
|
||||
- APP_URL=${SERVICE_URL_BOOKSTACK}
|
||||
- APP_KEY=${SERVICE_PASSWORD_APPKEY}
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.browserless.io/
|
||||
# slogan: A headless Chrome browser as a service .
|
||||
# slogan: A headless Chrome browser as a service.
|
||||
# category: devtools
|
||||
# tags: chrome,headless,browser,service
|
||||
# logo: svgs/browserless.svg
|
||||
# port: 3000
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
browserless:
|
||||
image: ghcr.io/browserless/chromium
|
||||
environment:
|
||||
- SERVICE_FQDN_BROWSERLESS_3000
|
||||
- SERVICE_URL_BROWSERLESS_3000
|
||||
- TOKEN=$SERVICE_PASSWORD_BROWSERLESS
|
||||
expose:
|
||||
- 3000
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/linuxserver/budge
|
||||
# slogan: A budgeting personal finance app.
|
||||
# category: productivity
|
||||
# tags: personal finance, budgeting, expense tracking
|
||||
# logo: svgs/budge.png
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
budge:
|
||||
image: lscr.io/linuxserver/budge:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_BUDGE
|
||||
- SERVICE_URL_BUDGE
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Madrid
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.budibase.com/docs/docker-compose
|
||||
# slogan: Low code platform for building business apps and workflows in minutes. Supports PostgreSQL, MySQL, MSSQL, MongoDB, Rest API, Docker, K8s, and more.
|
||||
# category: automation
|
||||
# tags: budibase,low-code,business-apps,workflow,automation,postgresql,mysql,mssql,mongodb,docker,kubernetes
|
||||
# logo: svgs/budibase.svg
|
||||
# port: 10000
|
||||
@@ -17,8 +18,9 @@ services:
|
||||
- INTERNAL_API_KEY=$SERVICE_BASE64_128_BUDIBASE
|
||||
- BUDIBASE_ENVIRONMENT=${BUDIBASE_ENVIRONMENT:-PRODUCTION}
|
||||
- PORT=4002
|
||||
- API_ENCRYPTION_KEY=$SERVICE_BASE64_64_BUDIBASE
|
||||
- JWT_SECRET=$SERVICE_BASE64_64_BUDIBASE
|
||||
- API_ENCRYPTION_KEY=$SERVICE_BASE64_64_BUDIBASEAPI
|
||||
- ENCRYPTION_KEY=$SERVICE_BASE64_64_BUDIBASE
|
||||
- JWT_SECRET=$SERVICE_BASE64_64_BUDIBASEJWT
|
||||
- LOG_LEVEL=info
|
||||
- ENABLE_ANALYTICS=${ENABLE_ANALYTICS:-true}
|
||||
- REDIS_URL=redis-service:6379
|
||||
@@ -81,7 +83,7 @@ services:
|
||||
proxy-service:
|
||||
image: budibase/proxy
|
||||
environment:
|
||||
- SERVICE_FQDN_BUDIBASE_10000
|
||||
- SERVICE_URL_BUDIBASE_10000
|
||||
- PROXY_RATE_LIMIT_WEBHOOKS_PER_SECOND=10
|
||||
- PROXY_RATE_LIMIT_API_PER_SECOND=20
|
||||
- APPS_UPSTREAM_URL=http://app-service:4002
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.bugsink.com/docs/
|
||||
# slogan: Self-hosted Error Tracking
|
||||
# slogan: Self-hosted Error Tracking.
|
||||
# category: monitoring
|
||||
# tags: python, error-tracking, django, mysql
|
||||
# logo: svgs/bugsink.svg
|
||||
# port: 8000
|
||||
@@ -31,9 +32,10 @@ services:
|
||||
environment:
|
||||
- SECRET_KEY=$SERVICE_PASSWORD_64_BUGSINK
|
||||
- CREATE_SUPERUSER=admin:$SERVICE_PASSWORD_BUGSINK
|
||||
- SERVICE_FQDN_BUGSINK_8000
|
||||
- BASE_URL=$SERVICE_FQDN_BUGSINK_8000
|
||||
- SERVICE_URL_BUGSINK_8000
|
||||
- BASE_URL=$SERVICE_URL_BUGSINK_8000
|
||||
- DATABASE_URL=mysql://${SERVICE_USER_BUGSINK}:$SERVICE_PASSWORD_BUGSINK@mysql:3306/${MYSQL_DATABASE:-bugsink}
|
||||
- BEHIND_HTTPS_PROXY=True
|
||||
depends_on:
|
||||
mysql:
|
||||
condition: service_healthy
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://cal.com/docs/developing/introduction
|
||||
# slogan: Scheduling infrastructure for everyone.
|
||||
# category: productivity
|
||||
# tags: calcom,calendso,scheduling,open,source
|
||||
# logo: svgs/calcom.svg
|
||||
# port: 3000
|
||||
@@ -12,14 +13,14 @@ services:
|
||||
# Some variables still uses Calcom previous name, Calendso
|
||||
#
|
||||
# Full list https://github.com/calcom/cal.com/blob/main/.env.example
|
||||
- SERVICE_FQDN_CALCOM_3000
|
||||
- SERVICE_URL_CALCOM_3000
|
||||
- NEXT_PUBLIC_LICENSE_CONSENT=agree
|
||||
- NODE_ENV=production
|
||||
- NEXT_PUBLIC_WEBAPP_URL=${SERVICE_FQDN_CALCOM}
|
||||
- NEXT_PUBLIC_API_V2_URL=${SERVICE_FQDN_CALCOM}/api/v2
|
||||
- NEXT_PUBLIC_WEBAPP_URL=${SERVICE_URL_CALCOM}
|
||||
- NEXT_PUBLIC_API_V2_URL=${SERVICE_URL_CALCOM}/api/v2
|
||||
# https://next-auth.js.org/configuration/options#nextauth_url
|
||||
# From https://github.com/calcom/docker?tab=readme-ov-file#important-run-time-variables, it should be ${NEXT_PUBLIC_WEBAPP_URL}/api/auth
|
||||
- NEXTAUTH_URL=${SERVICE_FQDN_CALCOM}/api/auth
|
||||
- NEXTAUTH_URL=${SERVICE_URL_CALCOM}/api/auth
|
||||
# It is highly recommended that the NEXTAUTH_SECRET must be overridden and very unique
|
||||
# Use `openssl rand -base64 32` to generate a key
|
||||
- NEXTAUTH_SECRET=${SERVICE_BASE64_CALCOMSECRET}
|
||||
@@ -47,7 +48,7 @@ services:
|
||||
- EMAIL_SERVER_PASSWORD=${EMAIL_SERVER_PASSWORD}
|
||||
- NEXT_PUBLIC_APP_NAME="Cal.com"
|
||||
# More info on ALLOWED_HOSTNAMES https://github.com/calcom/cal.com/issues/12201
|
||||
- ALLOWED_HOSTNAMES=["${SERVICE_FQDN_CALCOM}"]
|
||||
- ALLOWED_HOSTNAMES=["${SERVICE_URL_CALCOM}"]
|
||||
depends_on:
|
||||
- postgresql
|
||||
postgresql:
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# documentation: https://github.com/linuxserver/docker-calibre-web
|
||||
# slogan: Calibre-web is a web app providing a clean interface for browsing, reading and downloading eBooks.
|
||||
# tags: calibre,calibre-web,ebook,library,epub,ereader,kindle,book,reader
|
||||
# category: media
|
||||
# tags: calibre,calibre-web,ebook,library,epub,ereader,kindle,book,reader
|
||||
# logo: svgs/calibre-web.svg
|
||||
# port: 8083
|
||||
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
calibre-web:
|
||||
image: lscr.io/linuxserver/calibre-web:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CALIBRE_8083
|
||||
- SERVICE_URL_CALIBRE_8083
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=${TZ:-Etc/UTC}
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
# documentation: https://cap.so
|
||||
# slogan: Cap is the open source alternative to Loom. Lightweight, powerful, and cross-platform. Record and share in seconds.
|
||||
# tags: cap,loom,open,source,low,code
|
||||
# logo: svgs/cap.svg
|
||||
# port: 5679
|
||||
|
||||
# Storage Configuration:
|
||||
# Option 1: Remote S3-compatible storage (AWS S3, Cloudflare R2, etc.)
|
||||
# Set these environment variables:
|
||||
# - CAP_AWS_ACCESS_KEY: Your S3/R2 access key
|
||||
# - CAP_AWS_SECRET_KEY: Your S3/R2 secret key
|
||||
# - CAP_AWS_BUCKET: Your S3/R2 bucket name
|
||||
# - CAP_AWS_REGION: Your S3/R2 region (e.g., us-east-1, auto for R2)
|
||||
# - CAP_AWS_ENDPOINT: Your S3/R2 endpoint URL
|
||||
# - S3_PUBLIC_ENDPOINT: Public endpoint for your bucket (same as CAP_AWS_ENDPOINT for most cases)
|
||||
# - S3_INTERNAL_ENDPOINT: Internal endpoint (same as CAP_AWS_ENDPOINT for most cases)
|
||||
# - S3_PATH_STYLE: true for R2/most S3-compatible, false for AWS S3 virtual-hosted style
|
||||
#
|
||||
# Option 2: Local MinIO storage
|
||||
# Deploy MinIO as a separate service in the same network and set:
|
||||
# - CAP_AWS_ACCESS_KEY: MinIO root user
|
||||
# - CAP_AWS_SECRET_KEY: MinIO root password
|
||||
# - CAP_AWS_BUCKET: Your bucket name (e.g., capso)
|
||||
# - CAP_AWS_REGION: us-east-1 (or any region)
|
||||
# - CAP_AWS_ENDPOINT: http://minio:9000 (internal MinIO endpoint)
|
||||
# - S3_PUBLIC_ENDPOINT: http://your-minio-domain:9000 (public MinIO endpoint)
|
||||
# - S3_INTERNAL_ENDPOINT: http://minio:9000 (internal MinIO endpoint)
|
||||
# - S3_PATH_STYLE: true
|
||||
|
||||
services:
|
||||
cap-web:
|
||||
image: 'ghcr.io/capsoftware/cap-web:latest'
|
||||
environment:
|
||||
- SERVICE_URL_CAP_3000
|
||||
- 'DATABASE_URL=mysql://$SERVICE_USER_MYSQL:$SERVICE_PASSWORD_MYSQL@cap-db:3306/${MYSQL_DATABASE:-planetscale}'
|
||||
- 'WEB_URL=${SERVICE_URL_CAP}'
|
||||
- 'NEXTAUTH_URL=${SERVICE_URL_CAP}'
|
||||
- 'DATABASE_ENCRYPTION_KEY=${SERVICE_PASSWORD_64_DATABASEENCRYPTIONKEY}'
|
||||
- 'NEXTAUTH_SECRET=${SERVICE_PASSWORD_64_NEXTAUTHSECRET}'
|
||||
- 'CAP_AWS_ACCESS_KEY=${CAP_AWS_ACCESS_KEY:?}'
|
||||
- 'CAP_AWS_SECRET_KEY=${CAP_AWS_SECRET_KEY:?}'
|
||||
- 'CAP_AWS_BUCKET=${CAP_AWS_BUCKET:?}'
|
||||
- 'CAP_AWS_REGION=${CAP_AWS_REGION:?}'
|
||||
- 'S3_PUBLIC_ENDPOINT=${S3_PUBLIC_ENDPOINT:?}'
|
||||
- 'S3_INTERNAL_ENDPOINT=${S3_INTERNAL_ENDPOINT:?}'
|
||||
- 'NEXT_RUNTIME=nodejs'
|
||||
- 'S3_PATH_STYLE=${S3_PATH_STYLE:-true}'
|
||||
- 'CAP_AWS_ENDPOINT=${CAP_AWS_ENDPOINT:?}'
|
||||
depends_on:
|
||||
cap-db:
|
||||
condition: service_healthy
|
||||
|
||||
cap-db:
|
||||
image: 'mysql:8.0'
|
||||
environment:
|
||||
- 'MYSQL_USER=${SERVICE_USER_MYSQL}'
|
||||
- 'MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL}'
|
||||
- 'MYSQL_DATABASE=${MYSQL_DATABASE:-planetscale}'
|
||||
- 'MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}'
|
||||
- 'MYSQL_ALLOW_EMPTY_PASSWORD=${MYSQL_ALLOW_EMPTY_PASSWORD:-yes}'
|
||||
command:
|
||||
- '--max_connections=1000'
|
||||
- '--default-authentication-plugin=mysql_native_password'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- mysqladmin
|
||||
- ping
|
||||
- '-h'
|
||||
- 127.0.0.1
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 5
|
||||
volumes:
|
||||
- 'cap_db:/var/lib/mysql'
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation:https://docs.castopod.org/main/en/
|
||||
# slogan: Castopod is a free & open-source hosting platform made for podcasters who want engage and interact with their audience.
|
||||
# category: media
|
||||
# tags: podcast, media, audio, video, streaming, hosting, platform, castopod
|
||||
# logo: svgs/castopod.svg
|
||||
# port: 8000
|
||||
@@ -10,12 +11,12 @@ services:
|
||||
volumes:
|
||||
- castopod-media:/var/www/castopod/public/media
|
||||
environment:
|
||||
- SERVICE_FQDN_CASTOPOD_8000
|
||||
- SERVICE_URL_CASTOPOD_8000
|
||||
- MYSQL_DATABASE=castopod
|
||||
- MYSQL_USER=$SERVICE_USER_MYSQL
|
||||
- MYSQL_PASSWORD=$SERVICE_PASSWORD_MYSQL
|
||||
- CP_DISABLE_HTTPS=${CP_DISABLE_HTTPS:-1}
|
||||
- CP_BASEURL=$SERVICE_FQDN_CASTOPOD
|
||||
- CP_BASEURL=$SERVICE_URL_CASTOPOD
|
||||
- CP_ANALYTICS_SALT=$SERVICE_REALBASE64_64_SALT
|
||||
- CP_CACHE_HANDLER=redis
|
||||
- CP_REDIS_HOST=redis
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/dgtlmoon/changedetection.io/
|
||||
# slogan: Website change detection monitor and notifications.
|
||||
# category: monitoring
|
||||
# tags: web, alert, monitor
|
||||
# logo: svgs/changedetection.png
|
||||
# port: 5000
|
||||
@@ -10,32 +11,37 @@ services:
|
||||
volumes:
|
||||
- changedetection-data:/datastore
|
||||
environment:
|
||||
- SERVICE_FQDN_CHANGEDETECTION_5000
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- BASE_URL=$SERVICE_FQDN_CHANGEDETECTION
|
||||
- PLAYWRIGHT_DRIVER_URL=ws://playwright-chrome:3000/?stealth=1&--disable-web-security=true
|
||||
# Hides the `Referer` header so that monitored websites can't see the changedetection.io hostname.
|
||||
- HIDE_REFERER=true
|
||||
- SERVICE_URL_CHANGEDETECTION_5000
|
||||
- BASE_URL=${SERVICE_URL_CHANGEDETECTION}
|
||||
- PUID=${PUID:-1000}
|
||||
- PGID=${PGID:-1000}
|
||||
- PLAYWRIGHT_DRIVER_URL=${PLAYWRIGHT_DRIVER_URL:-ws://browser-sockpuppet-chrome:3000}
|
||||
- HIDE_REFERER=${HIDE_REFERER:-true}
|
||||
- FETCH_WORKERS=${FETCH_WORKERS:-10}
|
||||
- MINIMUM_SECONDS_RECHECK_TIME=${MINIMUM_SECONDS_RECHECK_TIME:-3}
|
||||
- DISABLE_VERSION_CHECK=${DISABLE_VERSION_CHECK:-true}
|
||||
- SCREENSHOT_MAX_HEIGHT=${SCREENSHOT_MAX_HEIGHT:-16000}
|
||||
- TZ=${TZ:-UTC}
|
||||
- LOGGER_LEVEL=${LOGGER_LEVEL:-DEBUG}
|
||||
healthcheck:
|
||||
test: ["CMD", "echo", "ok"]
|
||||
interval: 5s
|
||||
timeout: 20s
|
||||
retries: 10
|
||||
depends_on:
|
||||
playwright-chrome:
|
||||
browser-sockpuppet-chrome:
|
||||
condition: service_started
|
||||
healthcheck:
|
||||
test: ["CMD", "echo", "ok"]
|
||||
interval: 5s
|
||||
timeout: 20s
|
||||
retries: 10
|
||||
playwright-chrome:
|
||||
|
||||
browser-sockpuppet-chrome:
|
||||
hostname: browser-sockpuppet-chrome
|
||||
image: dgtlmoon/sockpuppetbrowser:latest
|
||||
# cap_add:
|
||||
# - SYS_ADMIN
|
||||
# SYS_ADMIN might be too much, but it can be needed on your platform https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md#running-puppeteer-on-gitlabci
|
||||
restart: unless-stopped
|
||||
cap_add:
|
||||
- SYS_ADMIN
|
||||
environment:
|
||||
- SCREEN_WIDTH=1920
|
||||
- SCREEN_HEIGHT=1024
|
||||
- SCREEN_DEPTH=16
|
||||
- MAX_CONCURRENT_CHROME_PROCESSES=10
|
||||
- SCREEN_WIDTH=${SCREEN_WIDTH:-1920}
|
||||
- SCREEN_HEIGHT=${SCREEN_HEIGHT:-1024}
|
||||
- SCREEN_DEPTH=${SCREEN_DEPTH:-16}
|
||||
- MAX_CONCURRENT_CHROME_PROCESSES=${MAX_CONCURRENT_CHROME_PROCESSES:-10}
|
||||
healthcheck:
|
||||
test: ["CMD", "echo", "ok"]
|
||||
interval: 5s
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://chaskiq.io
|
||||
# slogan: Chaskiq is an messaging platform for marketing, support & sales
|
||||
# category: cms
|
||||
# tags: chaskiq,messaging,chat,marketing,support,sales,open,source,rails,redis,postgresql,sidekiq
|
||||
# logo: svgs/chaskiq.png
|
||||
# port: 3000
|
||||
@@ -8,13 +9,13 @@ services:
|
||||
chaskiq:
|
||||
image: chaskiq/chaskiq:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CHASKIQ_3000
|
||||
- SERVICE_URL_CHASKIQ_3000
|
||||
- REDIS_URL=redis://redis:6379/
|
||||
- DATABASE_URL=postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/${POSTGRES_DB:-chaskiq}
|
||||
- POSTGRES_USER=$SERVICE_USER_POSTGRES
|
||||
- SERVICE_URL=${SERVICE_URL_CHASKIQ}
|
||||
- HOST=${SERVICE_FQDN_CHASKIQ_3000}
|
||||
- ASSET_HOST=${SERVICE_FQDN_CHASKIQ_3000}
|
||||
- HOST=${SERVICE_URL_CHASKIQ_3000}
|
||||
- ASSET_HOST=${SERVICE_URL_CHASKIQ_3000}
|
||||
- WS=wss://${SERVICE_URL_CHASKIQ}/cable
|
||||
- SNS_CONFIGURATION_SET=metrics
|
||||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-}
|
||||
@@ -80,8 +81,8 @@ services:
|
||||
- REDIS_URL=redis://redis:6379/
|
||||
- DATABASE_URL=postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/${POSTGRES_DB:-chaskiq}
|
||||
- POSTGRES_USER=$SERVICE_USER_POSTGRES
|
||||
- HOST=${SERVICE_FQDN_CHASKIQ_3000}
|
||||
- ASSET_HOST=${SERVICE_FQDN_CHASKIQ_3000}
|
||||
- HOST=${SERVICE_URL_CHASKIQ_3000}
|
||||
- ASSET_HOST=${SERVICE_URL_CHASKIQ_3000}
|
||||
- WS=wss://${SERVICE_URL_CHASKIQ}/cable
|
||||
- SNS_CONFIGURATION_SET=metrics
|
||||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.chatwoot.com/docs/self-hosted/
|
||||
# slogan: Delightful customer relationships at scale.
|
||||
# category: cms
|
||||
# tags: chatwoot,chat,api,open,source,rails,redis,postgresql,sidekiq
|
||||
# logo: svgs/chatwoot.svg
|
||||
# port: 3000
|
||||
@@ -11,9 +12,9 @@ services:
|
||||
- postgres
|
||||
- redis
|
||||
environment:
|
||||
- SERVICE_FQDN_CHATWOOT_3000
|
||||
- SERVICE_URL_CHATWOOT_3000
|
||||
- SECRET_KEY_BASE=$SERVICE_PASSWORD_CHATWOOT
|
||||
- FRONTEND_URL=${SERVICE_FQDN_CHATWOOT}
|
||||
- FRONTEND_URL=${SERVICE_URL_CHATWOOT}
|
||||
- DEFAULT_LOCALE=${CHATWOOT_DEFAULT_LOCALE}
|
||||
- FORCE_SSL=${FORCE_SSL:-false}
|
||||
- ENABLE_ACCOUNT_SIGNUP=${ENABLE_ACCOUNT_SIGNUP:-false}
|
||||
@@ -54,7 +55,7 @@ services:
|
||||
- redis
|
||||
environment:
|
||||
- SECRET_KEY_BASE=$SERVICE_PASSWORD_CHATWOOT
|
||||
- FRONTEND_URL=${SERVICE_FQDN_CHATWOOT}
|
||||
- FRONTEND_URL=${SERVICE_URL_CHATWOOT}
|
||||
- DEFAULT_LOCALE=${CHATWOOT_DEFAULT_LOCALE}
|
||||
- FORCE_SSL=${FORCE_SSL:-false}
|
||||
- ENABLE_ACCOUNT_SIGNUP=${ENABLE_ACCOUNT_SIGNUP:-false}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://bluewavelabs.gitbook.io/checkmate
|
||||
# slogan: An open source server monitoring application
|
||||
# category: monitoring
|
||||
# tags: monitoring,server,uptime,healthcheck
|
||||
# logo: svgs/checkmate.png
|
||||
# port: 80
|
||||
@@ -8,14 +9,14 @@ services:
|
||||
client:
|
||||
image: bluewaveuptime/uptime_client:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CHECKMATE_80
|
||||
- UPTIME_APP_API_BASE_URL=${SERVICE_FQDN_CHECKMATESERVER_5000}/api/v1
|
||||
- SERVICE_URL_CHECKMATE_80
|
||||
- UPTIME_APP_API_BASE_URL=${SERVICE_URL_CHECKMATESERVER_5000}/api/v1
|
||||
depends_on:
|
||||
- server
|
||||
server:
|
||||
image: bluewaveuptime/uptime_server:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CHECKMATESERVER_5000
|
||||
- SERVICE_URL_CHECKMATESERVER_5000
|
||||
- JWT_SECRET=${SERVICE_PASSWORD_64_JWT}
|
||||
- REFRESH_TOKEN_SECRET=${SERVICE_PASSWORD_64_REFRESH}
|
||||
- SYSTEM_EMAIL_ADDRESS=${SYSTEM_EMAIL_ADDRESS:-test@example.com}
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
# documentation: https://cookbook.chromadb.dev/
|
||||
# slogan: Chroma is the open-source search and retrieval database for AI applications.
|
||||
# category: ai
|
||||
# tags: ai,vector-database,semantic-search,machine-learning,bm25,embeddings,llm
|
||||
# logo: svgs/chroma.svg
|
||||
# port: 8000
|
||||
|
||||
services:
|
||||
chromadb:
|
||||
image: chromadb/chroma:1.0.15
|
||||
volumes:
|
||||
- chroma-data:/data
|
||||
environment:
|
||||
- SERVICE_URL_CHROMA_8000
|
||||
- IS_PERSISTENT=TRUE
|
||||
- PERSIST_DIRECTORY=/data
|
||||
healthcheck:
|
||||
test: [ "CMD", "/bin/bash", "-c", "cat < /dev/null > /dev/tcp/localhost/8000" ]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.classicpress.net/
|
||||
# slogan: A lightweight, stable, instantly familiar free open-source content management system, based on WordPress without the block editor (Gutenberg).
|
||||
# category: cms
|
||||
# tags: cms, blog, content, management
|
||||
# logo: svgs/classicpress.svg
|
||||
|
||||
@@ -9,7 +10,7 @@ services:
|
||||
volumes:
|
||||
- classicpress-files:/var/www/html
|
||||
environment:
|
||||
- SERVICE_FQDN_CLASSICPRESS
|
||||
- SERVICE_URL_CLASSICPRESS
|
||||
- CLASSICPRESS_DB_HOST=mariadb
|
||||
- CLASSICPRESS_DB_USER=$SERVICE_USER_CLASSICPRESS
|
||||
- CLASSICPRESS_DB_PASSWORD=$SERVICE_PASSWORD_CLASSICPRESS
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.classicpress.net/
|
||||
# slogan: A lightweight, stable, instantly familiar free open-source content management system, based on WordPress without the block editor (Gutenberg).
|
||||
# category: cms
|
||||
# tags: cms, blog, content, management
|
||||
# logo: svgs/classicpress.svg
|
||||
|
||||
@@ -9,7 +10,7 @@ services:
|
||||
volumes:
|
||||
- classicpress-files:/var/www/html
|
||||
environment:
|
||||
- SERVICE_FQDN_CLASSICPRESS
|
||||
- SERVICE_URL_CLASSICPRESS
|
||||
- CLASSICPRESS_DB_HOST=mysql
|
||||
- CLASSICPRESS_DB_USER=$SERVICE_USER_CLASSICPRESS
|
||||
- CLASSICPRESS_DB_PASSWORD=$SERVICE_PASSWORD_CLASSICPRESS
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.classicpress.net/
|
||||
# slogan: A lightweight, stable, instantly familiar free open-source content management system, based on WordPress without the block editor (Gutenberg).
|
||||
# category: cms
|
||||
# tags: cms, blog, content, management
|
||||
# logo: svgs/classicpress.svg
|
||||
|
||||
@@ -9,7 +10,7 @@ services:
|
||||
volumes:
|
||||
- classicpress-files:/var/www/html
|
||||
environment:
|
||||
- SERVICE_FQDN_CLASSICPRESS
|
||||
- SERVICE_URL_CLASSICPRESS
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
|
||||
interval: 2s
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://dbeaver.com/docs/cloudbeaver/
|
||||
# slogan: CloudBeaver is a lightweight web application designed for comprehensive data management.
|
||||
# category: devtools
|
||||
# tags: dbeaver, data management, data, database, mysql, postgres, sqlite, sql, mongodb
|
||||
# logo: svgs/cloudbeaver.svg
|
||||
# port: 8978
|
||||
@@ -10,7 +11,7 @@ services:
|
||||
volumes:
|
||||
- cloudbeaver-data:/opt/cloudbeaver/workspace
|
||||
environment:
|
||||
- SERVICE_FQDN_CLOUDBEAVER_8978
|
||||
- SERVICE_URL_CLOUDBEAVER_8978
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8978/"]
|
||||
interval: 5s
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/
|
||||
# slogan: Client for Cloudflare Tunnel, a daemon that exposes private services through the Cloudflare edge.
|
||||
# category: proxy
|
||||
# logo: svgs/cloudflared.svg
|
||||
|
||||
services:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://getcockpit.com/documentation/
|
||||
# slogan: Cockpit is a headless content platform that is lightweight, fast and ready for takeoff.
|
||||
# category: cms
|
||||
# tags: cockpit, headless, cms, database, nosql
|
||||
# logo: svgs/cockpit.svg
|
||||
# port: 80
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://coder.com/docs/code-server/latest
|
||||
# slogan: Code-Server is a web-based code editor that enables remote coding and collaboration from any device, anywhere.
|
||||
# category: devtools
|
||||
# tags: code, editor, remote, collaboration
|
||||
# logo: svgs/code-server.svg
|
||||
# port: 8443
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
code-server:
|
||||
image: lscr.io/linuxserver/code-server:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CODESERVER_8443
|
||||
- SERVICE_URL_CODESERVER_8443
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Madrid
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://coder.com/docs
|
||||
# slogan: Coder is an open-source platform for creating and managing cloud development environments on your infrastructure, with the tools and IDEs your developers already love.
|
||||
# category: devtools
|
||||
# tags: coder,development,environment,self-hosted,postgres
|
||||
# logo: svgs/coder.svg
|
||||
# port: 7080
|
||||
@@ -9,10 +10,10 @@ services:
|
||||
coder:
|
||||
image: ghcr.io/coder/coder:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CODER_7080
|
||||
- SERVICE_URL_CODER_7080
|
||||
- CODER_PG_CONNECTION_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@coder-database/${POSTGRES_DB:-coder-db}?sslmode=disable
|
||||
- CODER_HTTP_ADDRESS=0.0.0.0:7080
|
||||
- CODER_ACCESS_URL=${SERVICE_FQDN_CODER}
|
||||
- CODER_ACCESS_URL=${SERVICE_URL_CODER}
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
depends_on:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://hackmd.io/c/codimd-documentation
|
||||
# slogan: Realtime collaborative markdown notes on all platforms
|
||||
# category: productivity
|
||||
# tags: markdown, md, editor, opensource, collaborative, realtime-collaboration, notes
|
||||
# logo: svgs/codimd.png
|
||||
# port: 3000
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
codimd:
|
||||
image: nabo.codimd.dev/hackmdio/hackmd:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CODIMD_3000
|
||||
- SERVICE_URL_CODIMD_3000
|
||||
- CMD_DOMAIN=${SERVICE_URL_CODIMD}
|
||||
- CMD_PROTOCOL_USESSL=${CMD_PROTOCOL_USESSL:-false}
|
||||
- CMD_SESSION_SECRET=${SERVICE_PASSWORD_SESSIONSECRET}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/C4illin/ConvertX
|
||||
# slogan: A self-hosted online file converter. Supports over a thousand different formats.
|
||||
# category: backend
|
||||
# tags: converter,file,documents,files,directories
|
||||
# logo: svgs/convertx.png
|
||||
# port: 3000
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
convertx:
|
||||
image: ghcr.io/c4illin/convertx:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CONVERTX
|
||||
- SERVICE_URL_CONVERTX
|
||||
- ACCOUNT_REGISTRATION=${ACCOUNT_REGISTRATION:-false}
|
||||
- HTTP_ALLOWED=${HTTP_ALLOWED:-true}
|
||||
- ALLOW_UNAUTHENTICATED=${ALLOW_UNAUTHENTICATED:-false}
|
||||
|
||||
@@ -1,36 +1,57 @@
|
||||
# documentation: https://docs.convex.dev/
|
||||
# documentation: https://github.com/get-convex/convex-backend/blob/main/self-hosted/README.md
|
||||
# slogan: Convex is the open-source reactive database for app developers.
|
||||
# category: backend
|
||||
# tags: database, reactive, database, ai, agents, chatbot, api, team, bot, flows
|
||||
# logo: svgs/convex.svg
|
||||
# port: 6791
|
||||
|
||||
services:
|
||||
backend:
|
||||
image: ghcr.io/get-convex/convex-backend:5143fec81f146ca67495c12c6b7a15c5802c37e2
|
||||
image: ghcr.io/get-convex/convex-backend:00bd92723422f3bff968230c94ccdeb8c1719832
|
||||
volumes:
|
||||
- data:/convex/data
|
||||
environment:
|
||||
- SERVICE_FQDN_BACKEND_3210
|
||||
- SERVICE_URL_BACKEND_3210
|
||||
- INSTANCE_NAME=${INSTANCE_NAME:-self-hosted-convex}
|
||||
- INSTANCE_SECRET=${SERVICE_HEX_32_SECRET}
|
||||
- CONVEX_RELEASE_VERSION_DEV=${CONVEX_RELEASE_VERSION_DEV:-}
|
||||
- ACTIONS_USER_TIMEOUT_SECS=${ACTIONS_USER_TIMEOUT_SECS:-}
|
||||
- CONVEX_CLOUD_ORIGIN=${SERVICE_URL_CONVEX_3210}
|
||||
- CONVEX_SITE_ORIGIN=${SERVICE_URL_CONVEX_3211}
|
||||
# URL of the Convex API as accessed by the client/frontend.
|
||||
- CONVEX_CLOUD_ORIGIN=${SERVICE_URL_CONVEX}
|
||||
# URL of Convex HTTP actions as accessed by the client/frontend.
|
||||
- CONVEX_SITE_ORIGIN=${SERVICE_URL_BACKEND}
|
||||
- DATABASE_URL=${DATABASE_URL:-}
|
||||
- DISABLE_BEACON=${DISABLE_BEACON:-}
|
||||
- REDACT_LOGS_TO_CLIENT=${REDACT_LOGS_TO_CLIENT:-}
|
||||
- CONVEX_SELF_HOSTED_URL=${SERVICE_FQDN_CONVEX_6791}
|
||||
- DISABLE_BEACON=${DISABLE_BEACON:?false}
|
||||
- REDACT_LOGS_TO_CLIENT=${REDACT_LOGS_TO_CLIENT:?false}
|
||||
- DO_NOT_REQUIRE_SSL=${DO_NOT_REQUIRE_SSL:?true}
|
||||
- POSTGRES_URL=${POSTGRES_URL:-}
|
||||
- MYSQL_URL=${MYSQL_URL:-}
|
||||
- RUST_LOG=${RUST_LOG:-info}
|
||||
- RUST_BACKTRACE=${RUST_BACKTRACE:-}
|
||||
- AWS_REGION=${AWS_REGION:-}
|
||||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-}
|
||||
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:-}
|
||||
- AWS_SESSION_TOKEN=${AWS_SESSION_TOKEN:-}
|
||||
- AWS_S3_FORCE_PATH_STYLE=${AWS_S3_FORCE_PATH_STYLE:-}
|
||||
- AWS_S3_DISABLE_SSE=${AWS_S3_DISABLE_SSE:-}
|
||||
- AWS_S3_DISABLE_CHECKSUMS=${AWS_S3_DISABLE_CHECKSUMS:-}
|
||||
- S3_STORAGE_EXPORTS_BUCKET=${S3_STORAGE_EXPORTS_BUCKET:-}
|
||||
- S3_STORAGE_SNAPSHOT_IMPORTS_BUCKET=${S3_STORAGE_SNAPSHOT_IMPORTS_BUCKET:-}
|
||||
- S3_STORAGE_MODULES_BUCKET=${S3_STORAGE_MODULES_BUCKET:-}
|
||||
- S3_STORAGE_FILES_BUCKET=${S3_STORAGE_FILES_BUCKET:-}
|
||||
- S3_STORAGE_SEARCH_BUCKET=${S3_STORAGE_SEARCH_BUCKET:-}
|
||||
- S3_ENDPOINT_URL=${S3_ENDPOINT_URL:-}
|
||||
healthcheck:
|
||||
test: curl -f http://127.0.0.1:3210/version
|
||||
interval: 5s
|
||||
start_period: 5s
|
||||
start_period: 10s
|
||||
|
||||
dashboard:
|
||||
image: ghcr.io/get-convex/convex-dashboard:5143fec81f146ca67495c12c6b7a15c5802c37e2
|
||||
image: ghcr.io/get-convex/convex-dashboard:33cef775a8a6228cbacee4a09ac2c4073d62ed13
|
||||
environment:
|
||||
- SERVICE_FQDN_CONVEX_6791
|
||||
- NEXT_PUBLIC_DEPLOYMENT_URL=$SERVICE_FQDN_BACKEND_3210
|
||||
- SERVICE_URL_CONVEX_6791
|
||||
# URL of the Convex API as accessed by the dashboard (browser).
|
||||
- NEXT_PUBLIC_DEPLOYMENT_URL=${SERVICE_URL_BACKEND}
|
||||
depends_on:
|
||||
backend:
|
||||
condition: service_healthy
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/cupcakearmy/cryptgeon
|
||||
# slogan: Secure note / file sharing service inspired by PrivNote.
|
||||
# category: security
|
||||
# tags: cryptgeon, secure, note, sharing, privnote, file, sharing
|
||||
# logo: svgs/cryptgeon.png
|
||||
# port: 8000
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
app:
|
||||
image: cupcakearmy/cryptgeon:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_CRYPTGEON_8000
|
||||
- SERVICE_URL_CRYPTGEON_8000
|
||||
- SIZE_LIMIT=${SIZE_LIMIT:-4 MiB}
|
||||
- MAX_VIEWS=${MAX_VIEWS:-100}
|
||||
- MAX_EXPIRATION=${MAX_EXPIRATION:-360}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/gchq/CyberChef
|
||||
# slogan: The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis
|
||||
# category: security
|
||||
# tags: encryption, encoding, compression, data analysis, tools, development
|
||||
# logo: svgs/cyberchef.jpeg
|
||||
# port: 80
|
||||
@@ -9,7 +10,7 @@ services:
|
||||
image: ghcr.io/gchq/cyberchef:latest
|
||||
platform: linux/amd64
|
||||
environment:
|
||||
- SERVICE_FQDN_CYBERCHEF_80
|
||||
- SERVICE_URL_CYBERCHEF_80
|
||||
volumes:
|
||||
- cyberchef-data:/app/data
|
||||
healthcheck:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://dashy.to/docs
|
||||
# slogan:A self-hostable personal dashboard built for you. Includes status-checking, widgets, themes, icon packs, a UI editor and tons more!
|
||||
# category: productivity
|
||||
# tags: dashboard, personal, self-hostable
|
||||
# logo: svgs/dashy.png
|
||||
# port: 8080
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
dashy:
|
||||
image: lissy93/dashy
|
||||
environment:
|
||||
- SERVICE_FQDN_DASHY_8080
|
||||
- SERVICE_URL_DASHY_8080
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=${TIMEZONE:-UTC}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.deno.com/deploy/kv/manual/
|
||||
# slogan: The Denoland key-value database
|
||||
# category: database
|
||||
# tags: deno, kv, key-value, database
|
||||
# logo: svgs/denokv.svg
|
||||
# port: 4512
|
||||
@@ -9,7 +10,7 @@ services:
|
||||
image: ghcr.io/denoland/denokv:latest
|
||||
environment:
|
||||
- 'ACCESS_TOKEN=${SERVICE_PASSWORD_DENOKV}'
|
||||
- SERVICE_FQDN_DENOKV_4512
|
||||
- SERVICE_URL_DENOKV_4512
|
||||
volumes:
|
||||
- '${COOLIFY_VOLUME_APP}:/data'
|
||||
command: '--sqlite-path /data/denokv.sqlite serve --access-token ${SERVICE_PASSWORD_DENOKV}'
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://docs.dify.ai
|
||||
# slogan: Dify is an open-source LLM app development platform. Dify's intuitive interface combines AI workflow, RAG pipeline, agent capabilities, model management, observability features and more, letting you quickly go from prototype to production.
|
||||
# category: ai
|
||||
# tags: ai, weaviate, openai, gpt, llm, lmops, dify, redis, postgres, qdrant, RAG, agent
|
||||
# logo: svgs/dify.png
|
||||
# port: 3000
|
||||
@@ -210,9 +211,9 @@ services:
|
||||
web:
|
||||
image: langgenius/dify-web:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_WEB_3000
|
||||
- CONSOLE_API_URL=${SERVICE_FQDN_WEB}
|
||||
- APP_API_URL=${SERVICE_FQDN_API}
|
||||
- SERVICE_URL_WEB_3000
|
||||
- CONSOLE_API_URL=${SERVICE_URL_WEB}
|
||||
- APP_API_URL=${SERVICE_URL_API}
|
||||
- SENTRY_DSN=${WEB_SENTRY_DSN:-}
|
||||
- NEXT_TELEMETRY_DISABLED=${NEXT_TELEMETRY_DISABLED:-0}
|
||||
healthcheck:
|
||||
@@ -574,7 +575,7 @@ services:
|
||||
- './volumes/certbot/www:/var/www/html'
|
||||
entrypoint: [ "sh", "-c", "cp /docker-entrypoint-mount.sh /docker-entrypoint.sh && sed -i 's/\r$$//' /docker-entrypoint.sh && chmod +x /docker-entrypoint.sh && /docker-entrypoint.sh" ]
|
||||
environment:
|
||||
NGINX_SERVER_NAME: $SERVICE_FQDN_NGINX
|
||||
NGINX_SERVER_NAME: $SERVICE_URL_NGINX
|
||||
NGINX_HTTPS_ENABLED: ${NGINX_HTTPS_ENABLED:-false}
|
||||
NGINX_SSL_PORT: ${NGINX_SSL_PORT:-443}
|
||||
NGINX_PORT: ${NGINX_PORT:-80}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://directus.io
|
||||
# slogan: Directus wraps databases with a dynamic API, and provides an intuitive app for managing its content.
|
||||
# category: cms
|
||||
# tags: directus, cms, database, sql
|
||||
# logo: svgs/directus.svg
|
||||
# port: 8055
|
||||
@@ -12,7 +13,7 @@ services:
|
||||
- directus-extensions:/directus/extensions
|
||||
- directus-templates:/directus/templates
|
||||
environment:
|
||||
- SERVICE_FQDN_DIRECTUS_8055
|
||||
- SERVICE_URL_DIRECTUS_8055
|
||||
- KEY=$SERVICE_BASE64_64_KEY
|
||||
- SECRET=$SERVICE_BASE64_64_SECRET
|
||||
- ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://directus.io
|
||||
# slogan: Directus wraps databases with a dynamic API, and provides an intuitive app for managing its content.
|
||||
# category: cms
|
||||
# tags: directus, cms, database, sql
|
||||
# logo: svgs/directus.svg
|
||||
# port: 8055
|
||||
@@ -13,7 +14,7 @@ services:
|
||||
- directus-extensions:/directus/extensions
|
||||
- directus-templates:/directus/templates
|
||||
environment:
|
||||
- SERVICE_FQDN_DIRECTUS_8055
|
||||
- SERVICE_URL_DIRECTUS_8055
|
||||
- KEY=$SERVICE_BASE64_64_KEY
|
||||
- SECRET=$SERVICE_BASE64_64_SECRET
|
||||
- ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://crazymax.dev/diun/
|
||||
# slogan: Docker Image Update Notifier is a CLI application to receive notifications when a Docker image is updated on a Docker registry.
|
||||
# category: automation
|
||||
# tags: docker, notifier, slack
|
||||
# logo: svgs/diun.svg
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.docker.com/registry/
|
||||
# slogan: The Docker Registry lets you distribute Docker images.
|
||||
# category: devtools
|
||||
# tags: registry,images,docker
|
||||
# logo: svgs/docker-registry.png
|
||||
# port: 5000
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
registry:
|
||||
image: registry:2
|
||||
environment:
|
||||
- SERVICE_FQDN_REGISTRY_5000
|
||||
- SERVICE_URL_REGISTRY_5000
|
||||
- REGISTRY_AUTH=htpasswd
|
||||
- REGISTRY_AUTH_HTPASSWD_REALM=Registry
|
||||
- REGISTRY_AUTH_HTPASSWD_PATH=/auth/registry.password
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docmost.com/docs/
|
||||
# slogan: Open-source collaborative wiki and documentation software
|
||||
# category: productivity
|
||||
# tags: documentation, opensource, wiki, confluence, knowledge-base, notion, realtime-collaboration, notion-alternative
|
||||
# logo: svgs/docmost.png
|
||||
# port: 3000
|
||||
@@ -13,11 +14,20 @@ services:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_FQDN_DOCMOST_3000
|
||||
- SERVICE_URL_DOCMOST_3000
|
||||
- APP_SECRET=$SERVICE_BASE64_APPKEY
|
||||
- APP_URL=$SERVICE_FQDN_DOCMOST_3000
|
||||
- APP_URL=$SERVICE_URL_DOCMOST_3000
|
||||
- DATABASE_URL=postgresql://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql/docmost?schema=public
|
||||
- REDIS_URL=redis://redis:6379
|
||||
- MAIL_DRIVER=${MAIL_DRIVER}
|
||||
- SMTP_HOST=${SMTP_HOST}
|
||||
- SMTP_PORT=${SMTP_PORT}
|
||||
- SMTP_USERNAME=${SMTP_USERNAME}
|
||||
- SMTP_PASSWORD=${SMTP_PASSWORD}
|
||||
- SMTP_SECURE=${SMTP_SECURE}
|
||||
- MAIL_FROM_ADDRESS=${MAIL_FROM_ADDRESS}
|
||||
- MAIL_FROM_NAME=${MAIL_FROM_NAME}
|
||||
- POSTMARK_TOKEN=${POSTMARK_TOKEN}
|
||||
volumes:
|
||||
- "docmost:/app/data/storage"
|
||||
healthcheck:
|
||||
|
||||
@@ -1,22 +1,24 @@
|
||||
# documentation: https://docs.documenso.com/
|
||||
# slogan: Document signing, finally open source
|
||||
# category: productivity
|
||||
# tags: signing, opensource, document, pdf, e-signature, digital-signature, document-signing, pdf-signing, docusign
|
||||
# logo: svgs/documenso.png
|
||||
# port: 3000
|
||||
|
||||
services:
|
||||
documenso:
|
||||
image: documenso/documenso
|
||||
image: documenso/documenso:v1.12.10 # Released at Oct 9, 2025
|
||||
depends_on:
|
||||
database:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_FQDN_DOCUMENSO_3000
|
||||
- NEXTAUTH_URL=${SERVICE_FQDN_DOCUMENSO}
|
||||
- SERVICE_URL_DOCUMENSO_3000
|
||||
- NEXTAUTH_URL=${SERVICE_URL_DOCUMENSO}
|
||||
- NEXTAUTH_SECRET=${SERVICE_BASE64_AUTHSECRET}
|
||||
- NEXT_PRIVATE_ENCRYPTION_KEY=${SERVICE_BASE64_ENCRYPTIONKEY}
|
||||
- NEXT_PRIVATE_ENCRYPTION_SECONDARY_KEY=${SERVICE_BASE64_SECONDARYENCRYPTIONKEY}
|
||||
- NEXT_PUBLIC_WEBAPP_URL=${SERVICE_FQDN_DOCUMENSO}
|
||||
- NEXT_PUBLIC_WEBAPP_URL=${SERVICE_URL_DOCUMENSO}
|
||||
- NEXT_PRIVATE_RESEND_API_KEY=${NEXT_PRIVATE_RESEND_API_KEY}
|
||||
- NEXT_PRIVATE_SMTP_TRANSPORT=${NEXT_PRIVATE_SMTP_TRANSPORT}
|
||||
- NEXT_PRIVATE_SMTP_HOST=${NEXT_PRIVATE_SMTP_HOST}
|
||||
- NEXT_PRIVATE_SMTP_PORT=${NEXT_PRIVATE_SMTP_PORT}
|
||||
@@ -26,6 +28,16 @@ services:
|
||||
- NEXT_PRIVATE_SMTP_FROM_ADDRESS=${NEXT_PRIVATE_SMTP_FROM_ADDRESS}
|
||||
- NEXT_PRIVATE_DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@database/${POSTGRES_DB:-documenso-db}?schema=public
|
||||
- NEXT_PRIVATE_DIRECT_DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@database/${POSTGRES_DB:-documenso-db}?schema=public
|
||||
- NEXT_PRIVATE_SIGNING_LOCAL_FILE_PATH=/app/apps/remix/certs/certificate.p12
|
||||
- NEXT_PRIVATE_SIGNING_PASSPHRASE=${SERVICE_PASSWORD_DOCUMENSO}
|
||||
- CERT_VALID_DAYS=${CERT_VALID_DAYS:-365}
|
||||
- CERT_INFO_COUNTRY_NAME=${CERT_INFO_COUNTRY_NAME:-DO}
|
||||
- CERT_INFO_STATE_OR_PROVIDENCE=${CERT_INFO_STATE_OR_PROVIDENCE:-Santiago}
|
||||
- CERT_INFO_LOCALITY_NAME=${CERT_INFO_LOCALITY_NAME:-Santiago}
|
||||
- CERT_INFO_ORGANIZATION_NAME=${CERT_INFO_ORGANIZATION_NAME:-Example INC}
|
||||
- CERT_INFO_ORGANIZATIONAL_UNIT=${CERT_INFO_ORGANIZATIONAL_UNIT:-IT Department}
|
||||
- CERT_INFO_EMAIL=${CERT_INFO_EMAIL:-example@gmail.com}
|
||||
- NEXT_PUBLIC_DISABLE_SIGNUP=${DISABLE_LOGIN:-false}
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
@@ -33,6 +45,55 @@ services:
|
||||
interval: 2s
|
||||
timeout: 10s
|
||||
retries: 20
|
||||
entrypoint:
|
||||
- /bin/sh
|
||||
- -c
|
||||
- |
|
||||
echo "./certs" > /tmp/certs_dir_path
|
||||
echo "./make-certs.sh" > /tmp/cert_script_path
|
||||
echo "${SERVICE_PASSWORD_DOCUMENSO}" > /tmp/cert_pass
|
||||
|
||||
touch /tmp/cert_info_path
|
||||
cat <<EOF > /tmp/cert_info_path
|
||||
[ req ]
|
||||
distinguished_name = req_distinguished_name
|
||||
prompt = no
|
||||
[ req_distinguished_name ]
|
||||
C = ${CERT_INFO_COUNTRY_NAME}
|
||||
ST = ${CERT_INFO_STATE_OR_PROVIDENCE}
|
||||
L = ${CERT_INFO_LOCALITY_NAME}
|
||||
O = ${CERT_INFO_ORGANIZATION_NAME}
|
||||
OU = ${CERT_INFO_ORGANIZATIONAL_UNIT}
|
||||
CN = ${SERVICE_URL_DOCUMENSO}
|
||||
emailAddress = ${CERT_INFO_EMAIL}
|
||||
EOF
|
||||
|
||||
cat <<EOF > "$(cat /tmp/cert_script_path)"
|
||||
mkdir -p "$(cat /tmp/certs_dir_path)" && cd "$(cat /tmp/certs_dir_path)"
|
||||
|
||||
openssl genrsa -out private.key 2048
|
||||
|
||||
openssl req \
|
||||
-new \
|
||||
-x509 \
|
||||
-key private.key \
|
||||
-out certificate.crt \
|
||||
-days ${CERT_VALID_DAYS} \
|
||||
-config /tmp/cert_info_path
|
||||
|
||||
openssl pkcs12 \
|
||||
-export \
|
||||
-out certificate.p12 \
|
||||
-inkey private.key \
|
||||
-in certificate.crt \
|
||||
-legacy \
|
||||
-password file:/tmp/cert_pass
|
||||
EOF
|
||||
chmod +x "$(cat /tmp/cert_script_path)"
|
||||
|
||||
sh "$(cat /tmp/cert_script_path)"
|
||||
|
||||
./start.sh
|
||||
|
||||
database:
|
||||
image: postgres:17
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.docuseal.co/
|
||||
# slogan: Document Signing for Everyone free forever for individuals, extensible for businesses and developers. Open Source Alternative to DocuSign, PandaDoc and more.
|
||||
# category: productivity
|
||||
# tags: documentation
|
||||
# logo: svgs/docuseal.png
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
docuseal:
|
||||
image: docuseal/docuseal:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DOCUSEAL_3000
|
||||
- HOST=${SERVICE_FQDN_DOCUSEAL}
|
||||
- SERVICE_URL_DOCUSEAL_3000
|
||||
- HOST=${SERVICE_URL_DOCUSEAL}
|
||||
- DATABASE_URL=postgresql://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@postgresql:5432/${POSTGRES_DB}
|
||||
volumes:
|
||||
- docuseal-data:/data
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.docuseal.co/
|
||||
# slogan: Document Signing for Everyone free forever for individuals, extensible for businesses and developers. Open Source Alternative to DocuSign, PandaDoc and more.
|
||||
# category: productivity
|
||||
# tags: documentation
|
||||
# logo: svgs/docuseal.png
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
docuseal:
|
||||
image: docuseal/docuseal:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DOCUSEAL_3000
|
||||
- HOST=${SERVICE_FQDN_DOCUSEAL}
|
||||
- SERVICE_URL_DOCUSEAL_3000
|
||||
- HOST=${SERVICE_URL_DOCUSEAL}
|
||||
volumes:
|
||||
- docuseal-data:/data
|
||||
healthcheck:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.dokuwiki.org/
|
||||
# slogan: A lightweight and easy-to-use wiki platform for creating and managing documentation and knowledge bases.
|
||||
# category: cms
|
||||
# tags: wiki, documentation, knowledge, base
|
||||
# logo: svgs/dokuwiki.png
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
dokuwiki:
|
||||
image: lscr.io/linuxserver/dokuwiki:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DOKUWIKI
|
||||
- SERVICE_URL_DOKUWIKI
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Madrid
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.dolibarr.org/documentation-home.php
|
||||
# slogan: Dolibarr is a modern software package to manage your organization's activity (contacts, quotes, invoices, orders, stocks, agenda, hr, expense reports, accountancy, ecm, manufacturing, ...).
|
||||
# category: cms
|
||||
# tags: crm,ERP
|
||||
# logo: svgs/dolibarr.png
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
dolibarr:
|
||||
image: dolibarr/dolibarr:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DOLIBARR_80
|
||||
- SERVICE_URL_DOLIBARR_80
|
||||
- WWW_USER_ID=${WWW_USER_ID:-1000}
|
||||
- WWW_GROUP_ID=${WWW_GROUP_ID:-1000}
|
||||
- DOLI_DB_HOST=mariadb
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://dozzle.dev/
|
||||
# slogan: Dozzle is a simple and lightweight web UI for Docker logs.
|
||||
# category: devtools
|
||||
# tags: dozzle,docker,logs,web-ui
|
||||
# logo: svgs/dozzle.svg
|
||||
# port: 8080
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
dozzle:
|
||||
image: amir20/dozzle:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DOZZLE_8080
|
||||
- SERVICE_URL_DOZZLE_8080
|
||||
- DOZZLE_AUTH_PROVIDER=simple
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://dozzle.dev/guide/getting-started#running-with-docker
|
||||
# slogan: Dozzle is a simple and lightweight web UI for Docker logs.
|
||||
# category: devtools
|
||||
# tags: dozzle,docker,logs,web-ui
|
||||
# logo: svgs/dozzle.svg
|
||||
# port: 8080
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
dozzle:
|
||||
image: amir20/dozzle:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DOZZLE_8080
|
||||
- SERVICE_URL_DOZZLE_8080
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
healthcheck:
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
# documentation: https://gateway.drizzle.team/
|
||||
# slogan: Free self-hosted Drizzle Studio on steroids
|
||||
# category: backend
|
||||
# tags: drizzle,gateway,self-hosted,open-source,low-code
|
||||
# logo: svgs/drizzle.jpeg
|
||||
# port: 4983
|
||||
|
||||
services:
|
||||
drizzle-gateway:
|
||||
image: ghcr.io/drizzle-team/gateway:latest
|
||||
environment:
|
||||
- SERVICE_URL_DRIZZLE_4983
|
||||
- STORE_PATH=/app
|
||||
- MASTERPASS=$SERVICE_PASSWORD_DRIZZLE
|
||||
volumes:
|
||||
- drizzle-gateway-data:/app
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://www.drupal.org/about
|
||||
# slogan: Drupal is a free and open-source web content management system written in PHP and distributed under the GNU General Public License.
|
||||
# category: cms
|
||||
# tags: cms, blog, content, management, postgresql
|
||||
# logo: svgs/drupal.svg
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
drupal:
|
||||
image: "drupal:10-apache"
|
||||
environment:
|
||||
- SERVICE_FQDN_DRUPAL
|
||||
- SERVICE_URL_DRUPAL
|
||||
- DB_HOST=postgres
|
||||
- DB_NAME=postgres
|
||||
- DB_USER=postgres
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://duplicati.readthedocs.io
|
||||
# slogan: Duplicati is a backup solution, allowing you to make scheduled backups with encryption.
|
||||
# category: storage
|
||||
# tags: backup, encryption
|
||||
# logo: svgs/duplicati.webp
|
||||
# port: 8200
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
duplicati:
|
||||
image: lscr.io/linuxserver/duplicati:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_DUPLICATI_8200
|
||||
- SERVICE_URL_DUPLICATI_8200
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=${TZ:-Europe/London}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://easyappointments.org/
|
||||
# slogan: Schedule Anything. Let's start with easy! Get the best free online appointment scheduler on your server, today.
|
||||
# category: productivity
|
||||
# tags: calendar, scheduling, database
|
||||
# logo: svgs/easyappointments.png
|
||||
# port: 80
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
easyappointments:
|
||||
image: alextselegidis/easyappointments:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_EASYAPPOINTMENTS_80
|
||||
- BASE_URL=${SERVICE_FQDN_EASYAPPOINTMENTS}
|
||||
- SERVICE_URL_EASYAPPOINTMENTS_80
|
||||
- BASE_URL=${SERVICE_URL_EASYAPPOINTMENTS}
|
||||
- DB_HOST=mysql
|
||||
- DB_NAME=easyappointments
|
||||
- DB_USERNAME=root
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
# ignore: true
|
||||
# documentation: https://www.edgedb.com
|
||||
# slogan: An open-source database designed as a spiritual successor to SQL and the relational paradigm. Powered by the Postgres query engine under the hood.
|
||||
# tags: db database sql
|
||||
# category: database
|
||||
# tags: db, database, sql
|
||||
# logo: svgs/edgedb.svg
|
||||
# port: 5656
|
||||
|
||||
@@ -9,7 +10,7 @@ services:
|
||||
edgedb:
|
||||
image: edgedb/edgedb
|
||||
environment:
|
||||
- SERVICE_FQDN_EDGEDB_5656
|
||||
- SERVICE_URL_EDGEDB_5656
|
||||
- EDGEDB_SERVER_ADMIN_UI=${EDGEDB_SERVER_ADMIN_UI:-enabled}
|
||||
- EDGEDB_SERVER_BACKEND_DSN=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgresql:5432/${POSTGRES_DB:-edgedb}
|
||||
- EDGEDB_SERVER_SECURITY=${EDGEDB_SERVER_SECURITY:-strict}
|
||||
|
||||
@@ -0,0 +1,88 @@
|
||||
# documentation: https://www.elastic.co/docs/deploy-manage/deploy/self-managed/install-kibana-with-docker
|
||||
# slogan: Elastic + Kibana is a Free and Open Source Search, Monitoring, and Visualization Stack
|
||||
# tags: elastic,kibana,elasticsearch,search,visualization,logging,monitoring,observability,analytics,stack,devops
|
||||
# logo: svgs/elasticsearch.svg
|
||||
# port: 5601
|
||||
|
||||
services:
|
||||
elasticsearch:
|
||||
image: 'elastic/elasticsearch:9.1.2'
|
||||
container_name: elasticsearch
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- ELASTIC_PASSWORD=${SERVICE_PASSWORD_ELASTICSEARCH}
|
||||
- 'ES_JAVA_OPTS=-Xms512m -Xmx512m'
|
||||
- discovery.type=single-node
|
||||
- bootstrap.memory_lock=true
|
||||
- xpack.security.enabled=true
|
||||
- xpack.security.http.ssl.enabled=false
|
||||
- xpack.security.transport.ssl.enabled=false
|
||||
volumes:
|
||||
- '/etc/localtime:/etc/localtime:ro'
|
||||
- 'elasticsearch-data:/usr/share/elasticsearch/data'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- 'curl --user elastic:${SERVICE_PASSWORD_ELASTICSEARCH} --silent --fail http://localhost:9200/_cluster/health || exit 1'
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 24
|
||||
|
||||
kibana:
|
||||
image: 'kibana:9.1.2'
|
||||
container_name: kibana
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- SERVICE_URL_KIBANA_5601
|
||||
- 'SERVER_NAME=${SERVICE_URL_KIBANA}'
|
||||
- 'SERVER_PUBLICBASEURL=${SERVICE_URL_KIBANA}'
|
||||
- 'ELASTICSEARCH_HOSTS=http://elasticsearch:9200'
|
||||
- 'ELASTICSEARCH_USERNAME=kibana_system'
|
||||
- 'ELASTICSEARCH_PASSWORD=${SERVICE_PASSWORD_KIBANA}'
|
||||
- 'XPACK_SECURITY_ENCRYPTIONKEY=${SERVICE_PASSWORD_XPACKSECURITY}'
|
||||
- 'XPACK_REPORTING_ENCRYPTIONKEY=${SERVICE_PASSWORD_XPACKREPORTING}'
|
||||
- 'XPACK_ENCRYPTEDSAVEDOBJECTS_ENCRYPTIONKEY=${SERVICE_PASSWORD_XPACKENCRYPTEDSAVEDOBJECTS}'
|
||||
- 'TELEMETRY_OPTIN=${TELEMETRY_OPTIN:-false}'
|
||||
volumes:
|
||||
- '/etc/localtime:/etc/localtime:ro'
|
||||
- 'kibana-data:/usr/share/kibana/data'
|
||||
depends_on:
|
||||
setup:
|
||||
condition: service_completed_successfully
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- "curl -s http://localhost:5601/api/status | grep -q '\"level\":\"available\"' || exit 1"
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 120
|
||||
|
||||
setup:
|
||||
image: 'elastic/elasticsearch:9.1.2'
|
||||
container_name: kibana-setup
|
||||
depends_on:
|
||||
elasticsearch:
|
||||
condition: service_healthy
|
||||
exclude_from_hc: true
|
||||
environment:
|
||||
- 'ELASTIC_PASSWORD=${SERVICE_PASSWORD_ELASTICSEARCH}'
|
||||
- 'KIBANA_PASSWORD=${SERVICE_PASSWORD_KIBANA}'
|
||||
entrypoint:
|
||||
- sh
|
||||
- '-c'
|
||||
- |
|
||||
echo "Setting up Kibana user password..."
|
||||
|
||||
until curl -s -u "elastic:${ELASTIC_PASSWORD}" http://elasticsearch:9200/_cluster/health | grep -q '"status":"green\|yellow"'; do
|
||||
echo "Waiting for Elasticsearch..."
|
||||
sleep 2
|
||||
done
|
||||
|
||||
echo "Setting password for kibana_system user..."
|
||||
curl -s -X POST -u "elastic:${ELASTIC_PASSWORD}" \
|
||||
-H "Content-Type: application/json" \
|
||||
http://elasticsearch:9200/_security/user/kibana_system/_password \
|
||||
-d "{\"password\":\"${KIBANA_PASSWORD}\"}" || exit 1
|
||||
|
||||
echo "Kibana setup completed successfully"
|
||||
restart: 'no'
|
||||
@@ -0,0 +1,28 @@
|
||||
# documentation: https://www.elastic.co/products/elasticsearch
|
||||
# slogan: Elasticsearch is free and Open Source, Distributed, RESTful Search Engine.
|
||||
# tags: search,engine,fulltext,full,text,elasticsearch
|
||||
# category: search
|
||||
# logo: svgs/elasticsearch.svg
|
||||
# port: 9200
|
||||
|
||||
services:
|
||||
elasticsearch:
|
||||
image: docker.elastic.co/elasticsearch/elasticsearch-wolfi:8.19.0
|
||||
environment:
|
||||
- SERVICE_URL_ELASTICSEARCH_9200
|
||||
- ELASTIC_PASSWORD=${SERVICE_PASSWORD_ELASTICSEARCH}
|
||||
- ES_JAVA_OPTS=-Xms512m -Xmx512m # memory set to 512MB
|
||||
- discovery.type=single-node
|
||||
- bootstrap.memory_lock=true
|
||||
- xpack.security.http.ssl.enabled=false # Coolify handles SSL
|
||||
volumes:
|
||||
- elasticsearch-data:/usr/share/elasticsearch/data
|
||||
healthcheck:
|
||||
test:
|
||||
[
|
||||
"CMD-SHELL",
|
||||
"curl --user elastic:${SERVICE_PASSWORD_ELASTICSEARCH} --silent --fail http://localhost:9200/_cluster/health",
|
||||
]
|
||||
interval: 10s
|
||||
timeout: 10s
|
||||
retries: 24
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://emby.media/support/articles/Home.html
|
||||
# slogan: A media server software that allows you to organize, stream, and access your multimedia content effortlessly.
|
||||
# category: media
|
||||
# tags: media, server, movies, tv, music
|
||||
# logo: svgs/emby.png
|
||||
# port: 8096
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
emby:
|
||||
image: lscr.io/linuxserver/emby:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_EMBY_8096
|
||||
- SERVICE_URL_EMBY_8096
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Madrid
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/mregni/EmbyStat
|
||||
# slogan: EmbyStat is a web analytics tool, designed to provide insight into website traffic and user behavior.
|
||||
# category: media
|
||||
# tags: media, server, movies, tv, music
|
||||
# port: 6555
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
embystat:
|
||||
image: lscr.io/linuxserver/embystat:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_EMBYSTAT_6555
|
||||
- SERVICE_URL_EMBYSTAT_6555
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=Europe/Madrid
|
||||
|
||||
@@ -0,0 +1,132 @@
|
||||
# documentation: https://help.ente.io/self-hosting/installation/compose
|
||||
# slogan: Ente Photos is a fully open source, End to End Encrypted alternative to Google Photos and Apple Photos.
|
||||
# category: media
|
||||
# tags: photos,gallery,backup,encryption,privacy,self-hosted,google-photos,alternative
|
||||
# logo: svgs/ente-photos.svg
|
||||
# port: 8080
|
||||
|
||||
services:
|
||||
museum:
|
||||
image: 'ghcr.io/ente-io/server:613c6a96390d7a624cf30b946955705d632423cc' # Released at 2025-09-14T22:16:37-07:00
|
||||
environment:
|
||||
- SERVICE_URL_MUSEUM_8080
|
||||
- ENTE_DB_HOST=postgres
|
||||
- ENTE_DB_PORT=5432
|
||||
- 'ENTE_DB_NAME=${POSTGRES_DB:-ente_db}'
|
||||
- 'ENTE_DB_USER=${SERVICE_USER_POSTGRES}'
|
||||
- 'ENTE_DB_PASSWORD=${SERVICE_PASSWORD_POSTGRES}'
|
||||
- 'ENTE_HTTP_USE_TLS=${ENTE_HTTP_USE_TLS:-false}'
|
||||
- ENTE_S3_ARE_LOCAL_BUCKETS=false
|
||||
- ENTE_S3_USE_PATH_STYLE_URLS=true
|
||||
- 'ENTE_S3_B2_EU_CEN_KEY=${SERVICE_USER_MINIO}'
|
||||
- 'ENTE_S3_B2_EU_CEN_SECRET=${SERVICE_PASSWORD_MINIO}'
|
||||
- 'ENTE_S3_B2_EU_CEN_ENDPOINT=${SERVICE_FQDN_MINIO_9000}'
|
||||
- ENTE_S3_B2_EU_CEN_REGION=eu-central-2
|
||||
- ENTE_S3_B2_EU_CEN_BUCKET=b2-eu-cen
|
||||
- 'ENTE_KEY_ENCRYPTION=${SERVICE_REALBASE64_ENCRYPTION}'
|
||||
- 'ENTE_KEY_HASH=${SERVICE_REALBASE64_64_HASH}'
|
||||
- 'ENTE_JWT_SECRET=${SERVICE_REALBASE64_JWT}'
|
||||
- 'ENTE_INTERNAL_ADMIN=${ENTE_INTERNAL_ADMIN:-1580559962386438}'
|
||||
- 'ENTE_INTERNAL_DISABLE_REGISTRATION=${ENTE_INTERNAL_DISABLE_REGISTRATION:-false}'
|
||||
- 'ENTE_SMTP_HOST=${ENTE_SMTP_HOST:-smtp.gmail.com}'
|
||||
- 'ENTE_SMTP_PORT=${ENTE_SMTP_PORT:-587}'
|
||||
- 'ENTE_SMTP_USERNAME=${ENTE_SMTP_USERNAME}'
|
||||
- 'ENTE_SMTP_PASSWORD=${ENTE_SMTP_PASSWORD}'
|
||||
- 'ENTE_SMTP_EMAIL=${ENTE_SMTP_EMAIL}'
|
||||
- 'ENTE_SMTP_SENDER_NAME=${ENTE_SMTP_SENDER_NAME}'
|
||||
- 'ENTE_SMTP_ENCRYPTION=${ENTE_SMTP_ENCRYPTION:-tls}'
|
||||
volumes:
|
||||
- 'museum-data:/data'
|
||||
- 'museum-config:/config'
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
minio:
|
||||
condition: service_started
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- wget
|
||||
- '--spider'
|
||||
- 'http://127.0.0.1:8080/ping'
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
|
||||
web:
|
||||
image: 'ghcr.io/ente-io/web:ca03165f5e7f2a50105e6e40019c17ae6cdd934f' # Released at 2025-10-08T00:57:05-07:00
|
||||
environment:
|
||||
- SERVICE_URL_WEB_3000
|
||||
- 'ENTE_API_ORIGIN=${SERVICE_URL_MUSEUM}'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- curl
|
||||
- '--fail'
|
||||
- 'http://localhost:3000'
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
postgres:
|
||||
image: 'postgres:15-alpine'
|
||||
environment:
|
||||
- 'POSTGRES_USER=${SERVICE_USER_POSTGRES}'
|
||||
- 'POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES}'
|
||||
- 'POSTGRES_DB=${POSTGRES_DB:-ente_db}'
|
||||
volumes:
|
||||
- 'postgres-data:/var/lib/postgresql/data'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD-SHELL
|
||||
- 'pg_isready -U ${SERVICE_USER_POSTGRES} -d ${POSTGRES_DB:-ente_db}'
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
minio:
|
||||
image: 'quay.io/minio/minio:RELEASE.2025-09-07T16-13-09Z' # Released at 2025-09-07T16-13-09Z
|
||||
command: 'server /data --console-address ":9001"'
|
||||
environment:
|
||||
- MINIO_SERVER_URL=$MINIO_SERVER_URL
|
||||
- MINIO_BROWSER_REDIRECT_URL=$MINIO_BROWSER_REDIRECT_URL
|
||||
- MINIO_ROOT_USER=$SERVICE_USER_MINIO
|
||||
- MINIO_ROOT_PASSWORD=$SERVICE_PASSWORD_MINIO
|
||||
volumes:
|
||||
- 'minio-data:/data'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- mc
|
||||
- ready
|
||||
- local
|
||||
interval: 5s
|
||||
timeout: 20s
|
||||
retries: 10
|
||||
|
||||
minio-init:
|
||||
image: 'minio/mc:RELEASE.2025-08-13T08-35-41Z' # Released at 2025-08-13T08-35-41Z
|
||||
depends_on:
|
||||
minio:
|
||||
condition: service_started
|
||||
restart: on-failure
|
||||
exclude_from_hc: true
|
||||
environment:
|
||||
- 'MINIO_ROOT_USER=${SERVICE_USER_MINIO}'
|
||||
- 'MINIO_ROOT_PASSWORD=${SERVICE_PASSWORD_MINIO}'
|
||||
- 'MINIO_CORS_URLS=$SERVICE_URL_MUSEUM,$SERVICE_URL_WEB'
|
||||
entrypoint: |-
|
||||
/bin/sh -c "
|
||||
echo \"MINIO_CORS_URLS: \$${MINIO_CORS_URLS}\";
|
||||
sleep 5;
|
||||
until mc alias set minio http://minio:9000 \$${MINIO_ROOT_USER} \$${MINIO_ROOT_PASSWORD}; do
|
||||
echo 'Waiting for MinIO...';
|
||||
sleep 2;
|
||||
done;
|
||||
mc admin config set minio api cors_allow_origin='$MINIO_CORS_URLS' || true;
|
||||
mc mb minio/b2-eu-cen --ignore-existing;
|
||||
mc mb minio/wasabi-eu-central-2-v3 --ignore-existing;
|
||||
mc mb minio/scw-eu-fr-v3 --ignore-existing;
|
||||
echo 'MinIO buckets and CORS configured';
|
||||
"
|
||||
@@ -0,0 +1,87 @@
|
||||
# documentation: https://help.ente.io/self-hosting/installation/compose
|
||||
# slogan: Ente Photos is a fully open source, End to End Encrypted alternative to Google Photos and Apple Photos.
|
||||
# category: media
|
||||
# tags: photos,gallery,backup,encryption,privacy,self-hosted,google-photos,alternative
|
||||
# logo: svgs/ente-photos.svg
|
||||
# port: 8080
|
||||
|
||||
services:
|
||||
museum:
|
||||
image: ghcr.io/ente-io/server:latest
|
||||
environment:
|
||||
- SERVICE_URL_MUSEUM_8080
|
||||
|
||||
- ENTE_HTTP_USE_TLS=${ENTE_HTTP_USE_TLS:-false}
|
||||
|
||||
- ENTE_APPS_PUBLIC_ALBUMS=${SERVICE_URL_WEB_3002}
|
||||
- ENTE_APPS_CAST=${SERVICE_URL_WEB_3004}
|
||||
- ENTE_APPS_ACCOUNTS=${SERVICE_URL_WEB_3001}
|
||||
|
||||
- ENTE_DB_HOST=${ENTE_DB_HOST:-postgres}
|
||||
- ENTE_DB_PORT=${ENTE_DB_PORT:-5432}
|
||||
- ENTE_DB_NAME=${ENTE_DB_NAME:-ente_db}
|
||||
- ENTE_DB_USER=${SERVICE_USER_POSTGRES:-pguser}
|
||||
- ENTE_DB_PASSWORD=${SERVICE_PASSWORD_POSTGRES}
|
||||
|
||||
- ENTE_KEY_ENCRYPTION=${SERVICE_REALBASE64_ENCRYPTION}
|
||||
- ENTE_KEY_HASH=${SERVICE_REALBASE64_64_HASH}
|
||||
|
||||
- ENTE_JWT_SECRET=${SERVICE_REALBASE64_JWT}
|
||||
|
||||
- ENTE_INTERNAL_ADMIN=${ENTE_INTERNAL_ADMIN:-1580559962386438}
|
||||
- ENTE_INTERNAL_DISABLE_REGISTRATION=${ENTE_INTERNAL_DISABLE_REGISTRATION:-false}
|
||||
|
||||
- ENTE_S3_B2_EU_CEN_ARE_LOCAL_BUCKETS=${PRIMARY_STORAGE_ARE_LOCAL_BUCKETS:-false}
|
||||
- ENTE_S3_B2_EU_CEN_USE_PATH_STYLE_URLS=${PRIMARY_STORAGE_USE_PATH_STYLE_URLS:-true}
|
||||
- ENTE_S3_B2_EU_CEN_KEY=${S3_STORAGE_KEY:?}
|
||||
- ENTE_S3_B2_EU_CEN_SECRET=${S3_STORAGE_SECRET:?}
|
||||
- ENTE_S3_B2_EU_CEN_ENDPOINT=${S3_STORAGE_ENDPOINT:?}
|
||||
- ENTE_S3_B2_EU_CEN_REGION=${S3_STORAGE_REGION:-us-east-1}
|
||||
- ENTE_S3_B2_EU_CEN_BUCKET=${S3_STORAGE_BUCKET:?}
|
||||
|
||||
- ENTE_SMTP_HOST=${ENTE_SMTP_HOST:-smtp.gmail.com}
|
||||
- ENTE_SMTP_PORT=${ENTE_SMTP_PORT:-587}
|
||||
- ENTE_SMTP_USERNAME=${ENTE_SMTP_USERNAME}
|
||||
- ENTE_SMTP_PASSWORD=${ENTE_SMTP_PASSWORD}
|
||||
- ENTE_SMTP_EMAIL=${ENTE_SMTP_EMAIL}
|
||||
- ENTE_SMTP_SENDER_NAME=${ENTE_SMTP_SENDER_NAME}
|
||||
- ENTE_SMTP_ENCRYPTION=${ENTE_SMTP_ENCRYPTION:-tls}
|
||||
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
- museum-data:/data
|
||||
- museum-config:/config
|
||||
healthcheck:
|
||||
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8080/ping"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
|
||||
web:
|
||||
image: ghcr.io/ente-io/web
|
||||
environment:
|
||||
- SERVICE_URL_WEB_3000
|
||||
- ENTE_API_ORIGIN=${SERVICE_URL_MUSEUM}
|
||||
- ENTE_ALBUMS_ORIGIN=${SERVICE_URL_WEB_3002}
|
||||
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "--fail", "http://127.0.0.1:3000"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
|
||||
postgres:
|
||||
image: postgres:15
|
||||
environment:
|
||||
- POSTGRES_USER=${SERVICE_USER_POSTGRES:-pguser}
|
||||
- POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES}
|
||||
- POSTGRES_DB=${SERVICE_DB_NAME:-ente_db}
|
||||
volumes:
|
||||
- postgres-data:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://doc.evolution-api.com/v1/pt/get-started/introduction
|
||||
# slogan: Evolution API Installation with Postgres and Redis
|
||||
# category: backend
|
||||
# tags: evolution-api,evo-api,evolution,whatsapp,api,postgres,redis
|
||||
# logo: svgs/evolution-api.svg
|
||||
# port: 8080
|
||||
@@ -7,14 +8,14 @@
|
||||
version: '3.8'
|
||||
services:
|
||||
api:
|
||||
image: 'atendai/evolution-api:latest' # Change to specific version if needed.
|
||||
image: 'evoapicloud/evolution-api:latest' # Change to specific version if needed.
|
||||
restart: always
|
||||
depends_on:
|
||||
- redis
|
||||
- postgres
|
||||
environment:
|
||||
- SERVICE_FQDN_EVO_8080
|
||||
- SERVER_URL=$SERVICE_FQDN_EVO
|
||||
- SERVICE_URL_EVO_8080
|
||||
- SERVER_URL=$SERVICE_URL_EVO
|
||||
- DB_TYPE=${DB_TYPE:-postgresdb}
|
||||
- 'DB_POSTGRESDB_DATABASE=${POSTGRES_DB:-postgres}'
|
||||
- DB_POSTGRESDB_HOST=${DB_POSTGRESDB_HOST:-postgres}
|
||||
@@ -105,10 +106,11 @@ services:
|
||||
- WEBHOOK_EVENTS_ERRORS_WEBHOOK=${WEBHOOK_EVENTS_ERRORS_WEBHOOK:-}
|
||||
- 'CONFIG_SESSION_PHONE_CLIENT=${CONFIG_SESSION_PHONE_CLIENT:-Evolution API V2}'
|
||||
- CONFIG_SESSION_PHONE_NAME=${CONFIG_SESSION_PHONE_NAME:-Chrome}
|
||||
- CONFIG_SESSION_PHONE_VERSION=${CONFIG_SESSION_PHONE_VERSION:-2.3000.1015901307}
|
||||
- QRCODE_LIMIT=${QRCODE_LIMIT:-30}
|
||||
- OPENAI_ENABLED=${OPENAI_ENABLED:-true}
|
||||
- DIFY_ENABLED=${DIFY_ENABLED:-true}
|
||||
- FLOWISE_ENABLED=${FLOWISE_ENABLED:-true}
|
||||
- N8N_ENABLED=${N8N_ENABLED:-true}
|
||||
- TYPEBOT_ENABLED=${TYPEBOT_ENABLED:-true}
|
||||
- TYPEBOT_API_VERSION=${TYPEBOT_API_VERSION:-latest}
|
||||
- CHATWOOT_ENABLED=${CHATWOOT_ENABLED:-true}
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
# documentation: https://docs.excalidraw.com/docs
|
||||
# slogan: Virtual whiteboard for sketching hand-drawn like diagrams
|
||||
# category: productivity
|
||||
# tags: canvas,diagrams,drawing,productivity,whiteboard
|
||||
# logo: svgs/excalidraw.svg
|
||||
# port: 80
|
||||
|
||||
services:
|
||||
excalidraw:
|
||||
image: excalidraw/excalidraw:latest
|
||||
environment:
|
||||
- SERVICE_URL_EXCALIDRAW_80
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- wget
|
||||
- '--spider'
|
||||
- '--quiet'
|
||||
- 'http://localhost'
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://faradaysec.com/
|
||||
# slogan: Faraday is a powerful, open-source, web-based vulnerability management tool.
|
||||
# category: security
|
||||
# tags: vulnerability, management, tool
|
||||
# logo: svgs/faraday.png
|
||||
# port: 5985
|
||||
@@ -37,7 +38,7 @@ services:
|
||||
image: faradaysec/faraday:latest
|
||||
entrypoint: /entrypoint.sh
|
||||
environment:
|
||||
- SERVICE_FQDN_FARADAY_5985
|
||||
- SERVICE_URL_FARADAY_5985
|
||||
- AUTHENTIK_POSTGRESQL__PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}
|
||||
- PGSQL_USER=${SERVICE_USER_POSTGRESQL}
|
||||
- PGSQL_PASSWD=${SERVICE_PASSWORD_POSTGRESQL}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://fider.io
|
||||
# slogan: Fider is a feedback platform for collecting and managing user feedback.
|
||||
# category: productivity
|
||||
# tags: feedback, user-feedback
|
||||
# logo: svgs/fider.svg
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
fider:
|
||||
image: getfider/fider:stable
|
||||
environment:
|
||||
- SERVICE_FQDN_FIDER_3000
|
||||
- BASE_URL=$SERVICE_FQDN_FIDER_3000
|
||||
- SERVICE_URL_FIDER_3000
|
||||
- BASE_URL=$SERVICE_URL_FIDER_3000
|
||||
- DATABASE_URL=postgres://$SERVICE_USER_POSTGRES:$SERVICE_PASSWORD_POSTGRES@database:5432/fider?sslmode=disable
|
||||
- JWT_SECRET=$SERVICE_PASSWORD_64_FIDER
|
||||
- EMAIL_NOREPLY=${EMAIL_NOREPLY:-noreply@example.com}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://filebrowser.org
|
||||
# slogan: FileBrowser is a web-based file manager and file explorer with a user-friendly interface.
|
||||
# category: storage
|
||||
# tags: file-management, storage-access, data-organization, file-utilization, administration-tool
|
||||
# logo: svgs/filebrowser.svg
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
filebrowser:
|
||||
image: filebrowser/filebrowser:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FILEBROWSER_80
|
||||
- SERVICE_URL_FILEBROWSER_80
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ./srv
|
||||
@@ -28,8 +29,3 @@ services:
|
||||
"address": "0.0.0.0",
|
||||
"port": 80
|
||||
}
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
|
||||
interval: 2s
|
||||
timeout: 10s
|
||||
retries: 15
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://fileflows.com/docs/
|
||||
# slogan: FileFlows can drastically reduce your files, up to 90%, saving you space and money. No need to buy more hard drives, just shrink your files and start saving.
|
||||
# category: media
|
||||
# tags: media, transcode, convert, h265
|
||||
# logo: svgs/fileflows.svg
|
||||
# port: 5000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
fileflows:
|
||||
image: revenz/fileflows
|
||||
environment:
|
||||
- SERVICE_FQDN_FILEFLOWS_5000
|
||||
- _APP_URL=$SERVICE_FQDN_FILE_FLOWS
|
||||
- SERVICE_URL_FILEFLOWS_5000
|
||||
- _APP_URL=$SERVICE_URL_FILE_FLOWS
|
||||
- PUID=1000
|
||||
- PGID=1000
|
||||
- TZ=${TZ:-America/Toronto}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://firefly-iii.org
|
||||
# slogan: A personal finances manager that can help you save money.
|
||||
# category: productivity
|
||||
# tags: finance, money, personal, manager
|
||||
# logo: svgs/firefly.svg
|
||||
# port: 8080
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
firefly:
|
||||
image: fireflyiii/core:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FIREFLY_8080
|
||||
- SERVICE_URL_FIREFLY_8080
|
||||
- APP_KEY=$SERVICE_BASE64_APPKEY
|
||||
- DB_HOST=mysql
|
||||
- DB_PORT=3306
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/jlesage/docker-firefox
|
||||
# slogan: Fast, private, and self-hosted secure browser for browsing without limits.
|
||||
# category: productivity
|
||||
# tags: browser, web, privacy
|
||||
# logo: svgs/firefox.svg
|
||||
# port: 5800
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
firefox:
|
||||
image: jlesage/firefox
|
||||
environment:
|
||||
- SERVICE_FQDN_FIREFOX_5800
|
||||
- SERVICE_URL_FIREFOX_5800
|
||||
volumes:
|
||||
- firefox_config:/config
|
||||
healthcheck:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.flipt.io/cloud/overview
|
||||
# slogan: Flipt is a fully managed feature flag solution that enables you to keep your feature flags and remote config next to your code in Git.
|
||||
# category: backend
|
||||
# tags: feature flags,devops, CI, CD
|
||||
# logo: svgs/flipt.svg
|
||||
# port: 8080
|
||||
@@ -10,7 +11,7 @@ services:
|
||||
volumes:
|
||||
- 'flipt-data:/var/opt/flipt'
|
||||
environment:
|
||||
- SERVICE_FQDN_FLIPT_8080
|
||||
- SERVICE_URL_FLIPT_8080
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
@@ -20,4 +21,4 @@ services:
|
||||
- 'http://127.0.0.1:8080'
|
||||
interval: 2s
|
||||
timeout: 10s
|
||||
retries: 15
|
||||
retries: 15
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.flowiseai.com/
|
||||
# slogan: Flowise is an open source low-code tool for developers to build customized LLM orchestration flows & AI agents. Also deploys Redis, Postgres and other services.
|
||||
# category: ai
|
||||
# tags: lowcode, nocode, ai, llm, openai, anthropic, machine-learning, rag, agents, chatbot, api, team, bot, flows
|
||||
# logo: svgs/flowise.png
|
||||
# port: 3001
|
||||
@@ -15,7 +16,7 @@ services:
|
||||
qdrant:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_FQDN_FLOWISE_3001
|
||||
- SERVICE_URL_FLOWISE_3001
|
||||
- DEBUG=${DEBUG:-false}
|
||||
- DISABLE_FLOWISE_TELEMETRY=${DISABLE_FLOWISE_TELEMETRY:-true}
|
||||
- PORT=${PORT:-3001}
|
||||
@@ -66,7 +67,7 @@ services:
|
||||
qdrant:
|
||||
image: qdrant/qdrant:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_QDRANT_6333
|
||||
- SERVICE_URL_QDRANT_6333
|
||||
- QDRANT__SERVICE__API_KEY=${SERVICE_PASSWORD_QDRANTAPIKEY}
|
||||
volumes:
|
||||
- flowise-qdrant-data:/qdrant/storage
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.flowiseai.com/
|
||||
# slogan: Flowise is an open source low-code tool for developers to build customized LLM orchestration flows & AI agents.
|
||||
# category: ai
|
||||
# tags: lowcode, nocode, ai, llm, openai, anthropic, machine-learning, rag, agents, chatbot, api, team, bot, flows
|
||||
# logo: svgs/flowise.png
|
||||
# port: 3001
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
flowise:
|
||||
image: flowiseai/flowise:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FLOWISE_3001
|
||||
- SERVICE_URL_FLOWISE_3001
|
||||
- DEBUG=${DEBUG:-false}
|
||||
- DISABLE_FLOWISE_TELEMETRY=${DISABLE_FLOWISE_TELEMETRY:-true}
|
||||
- PORT=${PORT:-3001}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, mariadb
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, mysql
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, postgresql
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, runner, mariadb, actions, cicd, ci
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -9,8 +10,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, runner, mysql, actions, cicd, ci
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -9,8 +10,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, runner, postresql, actions, cicd, ci
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -9,8 +10,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
# ignore: true
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, runner, actions, cicd, ci
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -9,8 +10,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS:-false}
|
||||
- USER_UID=1000
|
||||
@@ -72,7 +73,7 @@ services:
|
||||
command: >-
|
||||
bash -ec '
|
||||
while : ; do
|
||||
forgejo-runner create-runner-file --connect --instance ${SERVICE_FQDN_FORGEJO}:3000 --name runner --secret ${RUNNER_SHARED_SECRET} && break ;
|
||||
forgejo-runner create-runner-file --connect --instance ${SERVICE_URL_FORGEJO}:3000 --name runner --secret ${RUNNER_SHARED_SECRET} && break ;
|
||||
sleep 1 ;
|
||||
done ;
|
||||
sed -i -e "s|\"labels\": null|\"labels\": [\"docker:docker://node:20-bookworm\", \"ubuntu-22.04:docker://catthehacker/ubuntu:act-22.04\"]|" .runner ;
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://forgejo.org/docs
|
||||
# slogan: Forgejo is a self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight
|
||||
# logo: svgs/forgejo.svg
|
||||
# port: 3000
|
||||
@@ -8,8 +9,8 @@ services:
|
||||
forgejo:
|
||||
image: codeberg.org/forgejo/forgejo:8
|
||||
environment:
|
||||
- SERVICE_FQDN_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_FQDN_FORGEJO_3000}
|
||||
- SERVICE_URL_FORGEJO_3000
|
||||
- FORGEJO__server__ROOT_URL=${SERVICE_URL_FORGEJO_3000}
|
||||
- FORGEJO__migrations__ALLOWED_DOMAINS=${FORGEJO__migrations__ALLOWED_DOMAINS}
|
||||
- FORGEJO__migrations__ALLOW_LOCALNETWORKS=${FORGEJO__migrations__ALLOW_LOCALNETWORKS-false}
|
||||
- USER_UID=1000
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://formbricks.com/docs/self-hosting/configuration
|
||||
# slogan: Open Source Survey Platform
|
||||
# category: analytics
|
||||
# tags: form, builder, forms, survey, open source, experience, management, self-hosted, docker
|
||||
# logo: svgs/formbricks.png
|
||||
# port: 3000
|
||||
@@ -8,12 +9,12 @@ services:
|
||||
formbricks:
|
||||
image: ghcr.io/formbricks/formbricks:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FORMBRICKS_3000
|
||||
- WEBAPP_URL=$SERVICE_FQDN_FORMBRICKS
|
||||
- SERVICE_URL_FORMBRICKS_3000
|
||||
- WEBAPP_URL=$SERVICE_URL_FORMBRICKS
|
||||
- DATABASE_URL=postgres://$SERVICE_USER_POSTGRESQL:$SERVICE_PASSWORD_POSTGRESQL@postgresql:5432/${POSTGRESQL_DATABASE:-formbricks}
|
||||
- POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}
|
||||
- NEXTAUTH_SECRET=$SERVICE_BASE64_NEXTAUTH
|
||||
- NEXTAUTH_URL=$SERVICE_FQDN_FORMBRICKS
|
||||
- NEXTAUTH_URL=$SERVICE_URL_FORMBRICKS
|
||||
- ENCRYPTION_KEY=$SERVICE_BASE64_ENCRYPTION
|
||||
- CRON_SECRET=$SERVICE_BASE64_CRON
|
||||
- ENTERPRISE_LICENSE_KEY=${ENTERPRISE_LICENSE_KEY}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://foundryvtt.com/kb/
|
||||
# slogan: Foundry Virtual Tabletop is a self-hosted & modern roleplaying platform
|
||||
# category: media
|
||||
# tags: foundryvtt,foundry,vtt,ttrpg,roleplaying
|
||||
# logo: svgs/foundryvtt.png
|
||||
# port: 30000
|
||||
@@ -10,7 +11,7 @@ services:
|
||||
expose:
|
||||
- 30000
|
||||
environment:
|
||||
- SERVICE_FQDN_FOUNDRY_30000
|
||||
- SERVICE_URL_FOUNDRY_30000
|
||||
# Account username or email address for foundryvtt.com. Required for downloading an application distribution.
|
||||
- FOUNDRY_USERNAME=${FOUNDRY_USERNAME}
|
||||
# Account password for foundryvtt.com. Required for downloading an application distribution.
|
||||
@@ -19,7 +20,7 @@ services:
|
||||
- FOUNDRY_RELEASE_URL=${FOUNDRY_RELEASE_URL}
|
||||
# The license key to install. e.g.; AAAA-BBBB-CCCC-DDDD-EEEE-FFFF If left unset, a license key will be fetched when using account authentication.
|
||||
- FOUNDRY_LICENSE_KEY=${FOUNDRY_LICENSE_KEY}
|
||||
# Admin password to be applied at startup. If omitted the admin password will be cleared.
|
||||
# Admin password to be applied at startup. If omitted the admin password will be cleared.
|
||||
- FOUNDRY_ADMIN_KEY=${FOUNDRY_ADMIN:-atropos}
|
||||
# A custom hostname to use in place of the host machine's public IP address when displaying the address of the game session. This allows for reverse proxies or DNS servers to modify the public address. Example: foundry.example.com
|
||||
- FOUNDRY_HOSTNAME=${FOUNDRY_HOSTNAME}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://github.com/freescout-help-desk/freescout/wiki/
|
||||
# slogan: FreeScout is the super lightweight and powerful free open source help desk and shared inbox written in PHP (Laravel framework).
|
||||
# category: cms
|
||||
# tags: helpdesk, support, ticketing, customer-support
|
||||
# logo: svgs/freescout.png
|
||||
# port: 80
|
||||
@@ -14,12 +15,12 @@ services:
|
||||
mariadb:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_FQDN_FREESCOUT_80
|
||||
- SERVICE_URL_FREESCOUT_80
|
||||
- DB_HOST=mariadb
|
||||
- DB_NAME=${MARIADB_DATABASE:-freescout}
|
||||
- DB_USER=${SERVICE_USER_MARIADB:-freescout}
|
||||
- DB_PASS=${SERVICE_PASSWORD_MARIADB}
|
||||
- SITE_URL=${SERVICE_FQDN_FREESCOUT}
|
||||
- SITE_URL=${SERVICE_URL_FREESCOUT}
|
||||
- ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
|
||||
- ADMIN_PASS=${SERVICE_PASSWORD_ADMIN}
|
||||
- DISPLAY_ERRORS=${DISPLAY_ERRORS:-FALSE}
|
||||
@@ -44,4 +45,4 @@ services:
|
||||
start_period: 10s
|
||||
interval: 5s
|
||||
timeout: 10s
|
||||
retries: 15
|
||||
retries: 15
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://freshrss.org/index.html
|
||||
# slogan: A free, self-hostable feed aggregator.
|
||||
# category: cms
|
||||
# tags: rss, feed
|
||||
# logo: svgs/freshrss.png
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
freshrss:
|
||||
image: freshrss/freshrss:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FRESHRSS_80
|
||||
- SERVICE_URL_FRESHRSS_80
|
||||
- CRON_MIN=${CRON_MIN:-1,31}
|
||||
- MARIADB_DB=${MARIADB_DATABASE:-freshrss}
|
||||
- MARIADB_USER=${SERVICE_USER_MARIADB}
|
||||
@@ -24,7 +25,7 @@ services:
|
||||
interval: 5s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
|
||||
freshrss-db:
|
||||
image: mariadb:11
|
||||
volumes:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://freshrss.org/index.html
|
||||
# slogan: A free, self-hostable feed aggregator.
|
||||
# category: cms
|
||||
# tags: rss, feed
|
||||
# logo: svgs/freshrss.png
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
freshrss:
|
||||
image: freshrss/freshrss:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FRESHRSS_80
|
||||
- SERVICE_URL_FRESHRSS_80
|
||||
- CRON_MIN=${CRON_MIN:-1,31}
|
||||
- MYSQL_DB=${MYSQL_DATABASE:-freshrss}
|
||||
- MYSQL_USER=${SERVICE_USER_MYSQL}
|
||||
@@ -24,7 +25,7 @@ services:
|
||||
interval: 5s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
|
||||
freshrss-db:
|
||||
image: mysql:8
|
||||
volumes:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://freshrss.org/index.html
|
||||
# slogan: A free, self-hostable feed aggregator.
|
||||
# category: cms
|
||||
# tags: rss, feed
|
||||
# logo: svgs/freshrss.png
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
freshrss:
|
||||
image: freshrss/freshrss:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FRESHRSS_80
|
||||
- SERVICE_URL_FRESHRSS_80
|
||||
- CRON_MIN=${CRON_MIN:-1,31}
|
||||
- POSTGRES_DB=${POSTGRESQL_DATABASE:-freshrss}
|
||||
- POSTGRES_USER=${SERVICE_USER_POSTGRESQL}
|
||||
@@ -25,7 +26,7 @@ services:
|
||||
interval: 5s
|
||||
timeout: 20s
|
||||
retries: 3
|
||||
|
||||
|
||||
freshrss-db:
|
||||
image: postgres:16
|
||||
volumes:
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://freshrss.org/index.html
|
||||
# slogan: A free, self-hostable feed aggregator.
|
||||
# category: cms
|
||||
# tags: rss, feed
|
||||
# logo: svgs/freshrss.png
|
||||
# port: 80
|
||||
@@ -8,7 +9,7 @@ services:
|
||||
freshrss:
|
||||
image: freshrss/freshrss:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_FRESHRSS_80
|
||||
- SERVICE_URL_FRESHRSS_80
|
||||
- CRON_MIN=${CRON_MIN:-1,31}
|
||||
volumes:
|
||||
- freshrss-data:/var/www/FreshRSS/data
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.getoutline.com/s/hosting/doc/hosting-outline-nipGaCRBDu
|
||||
# slogan: Your team’s knowledge base
|
||||
# category: productivity
|
||||
# tags: knowledge base, documentation
|
||||
# logo: svgs/getoutline.jpeg
|
||||
# port: 3000
|
||||
@@ -15,13 +16,13 @@ services:
|
||||
redis:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- SERVICE_FQDN_OUTLINE_3000
|
||||
- SERVICE_URL_OUTLINE_3000
|
||||
- NODE_ENV=production
|
||||
- SECRET_KEY=${SERVICE_BASE64_OUTLINE}
|
||||
- SECRET_KEY=${SERVICE_HEX_32_OUTLINE}
|
||||
- UTILS_SECRET=${SERVICE_PASSWORD_64_OUTLINE}
|
||||
- DATABASE_URL=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_64_POSTGRES}@postgres:5432/${POSTGRES_DATABASE:-outline}
|
||||
- REDIS_URL=redis://:${SERVICE_PASSWORD_64_REDIS}@redis:6379
|
||||
- URL=${SERVICE_FQDN_OUTLINE_3000}
|
||||
- URL=${SERVICE_URL_OUTLINE_3000}
|
||||
- PORT=${OUTLINE_PORT:-3000}
|
||||
- FILE_STORAGE=${FILE_STORAGE:-local}
|
||||
- FILE_STORAGE_LOCAL_ROOT_DIR=${FILE_STORAGE_LOCAL_ROOT_DIR:-/var/lib/outline/data}
|
||||
@@ -52,7 +53,7 @@ services:
|
||||
- OIDC_USERNAME_CLAIM=${OIDC_USERNAME_CLAIM}
|
||||
- OIDC_DISPLAY_NAME=${OIDC_DISPLAY_NAME}
|
||||
- OIDC_SCOPES=${OIDC_SCOPES}
|
||||
- GITHUB_CLIENT_ID=${GITHUB_CLIENT_ID}
|
||||
- GITHUB_CLIENT_ID=${GITHUB_CLIENT_ID}
|
||||
- GITHUB_CLIENT_SECRET=${GITHUB_CLIENT_SECRET}
|
||||
- GITHUB_APP_NAME=${GITHUB_APP_NAME}
|
||||
- GITHUB_APP_ID=${GITHUB_APP_ID}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://ghost.org
|
||||
# slogan: Ghost is a content management system (CMS) and blogging platform.
|
||||
# category: cms
|
||||
# tags: cms, blog, content, management, system
|
||||
# logo: svgs/ghost.svg
|
||||
# port: 2368
|
||||
@@ -10,8 +11,8 @@ services:
|
||||
volumes:
|
||||
- ghost-content-data:/var/lib/ghost/content
|
||||
environment:
|
||||
- SERVICE_FQDN_GHOST_2368
|
||||
- url=$SERVICE_FQDN_GHOST_2368
|
||||
- SERVICE_URL_GHOST_2368
|
||||
- url=$SERVICE_URL_GHOST_2368
|
||||
- database__client=mysql
|
||||
- database__connection__host=mysql
|
||||
- database__connection__user=$SERVICE_USER_MYSQL
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.gitea.com
|
||||
# slogan: Gitea is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, mariadb
|
||||
# logo: svgs/gitea.svg
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
gitea:
|
||||
image: gitea/gitea:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_GITEA_3000
|
||||
- SERVICE_URL_GITEA_3000
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
- GITEA__database__DB_TYPE=mysql
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.gitea.com
|
||||
# slogan: Gitea is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, mysql
|
||||
# logo: svgs/gitea.svg
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
gitea:
|
||||
image: gitea/gitea:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_GITEA_3000
|
||||
- SERVICE_URL_GITEA_3000
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
- GITEA__database__DB_TYPE=mysql
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.gitea.com
|
||||
# slogan: Gitea is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight, postgresql
|
||||
# logo: svgs/gitea.svg
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
gitea:
|
||||
image: gitea/gitea:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_GITEA_3000
|
||||
- SERVICE_URL_GITEA_3000
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
- GITEA__database__DB_TYPE=postgres
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# documentation: https://docs.gitea.com
|
||||
# slogan: Gitea is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
|
||||
# category: git
|
||||
# tags: version control, collaboration, code, hosting, lightweight
|
||||
# logo: svgs/gitea.svg
|
||||
|
||||
@@ -7,7 +8,7 @@ services:
|
||||
gitea:
|
||||
image: gitea/gitea:latest
|
||||
environment:
|
||||
- SERVICE_FQDN_GITEA_3000
|
||||
- SERVICE_URL_GITEA_3000
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
ports:
|
||||
|
||||
Loaded 100 of 1172 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user