Compare commits
11 Commits
0.3.0+v5.1
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| a8613e3d96 | |||
| da9a110c46 | |||
| d73a391225 | |||
| 4c57b8f80d | |||
| 290a8ad72d | |||
| 148439f7cf | |||
| dd90697270 | |||
| 03db64341d | |||
| f31df0e83c | |||
| 9f68524046 | |||
| 74b61b1154 |
34
.env.sample
34
.env.sample
@ -72,3 +72,37 @@ LOGGING_LEVEL_LOGGERS_APP=INFO
|
||||
##############################################################################
|
||||
# Set to false to disable automatic migrations on backend startup
|
||||
# AUTO_MIGRATIONS=true
|
||||
|
||||
##############################################################################
|
||||
# CONVERSION (file upload → Yjs via y-provider)
|
||||
##############################################################################
|
||||
# Allow uploading .docx/.md files for conversion to Yjs.
|
||||
# Recipe sets this to true (upstream default is false).
|
||||
# CONVERSION_UPLOAD_ENABLED=true
|
||||
# Upstream defaults (uncomment to override):
|
||||
# CONVERSION_FILE_MAX_SIZE=20971520
|
||||
# CONVERSION_FILE_EXTENSIONS_ALLOWED=.docx,.md
|
||||
# CONVERSION_API_ENDPOINT=convert
|
||||
# CONVERSION_API_CONTENT_FIELD=content
|
||||
# CONVERSION_API_TIMEOUT=30
|
||||
# CONVERSION_API_SECURE=false
|
||||
|
||||
##############################################################################
|
||||
# DATABASE CONNECTION POOL
|
||||
##############################################################################
|
||||
# Upstream default (uncomment to override):
|
||||
# DB_PSYCOPG_POOL_ENABLED=false
|
||||
|
||||
##############################################################################
|
||||
# EMAIL APP URL
|
||||
##############################################################################
|
||||
# DJANGO_EMAIL_URL_APP is set automatically in compose.yml to https://${DOMAIN}.
|
||||
# Override is not exposed via .env — edit compose.yml directly if needed.
|
||||
# (Upstream default falls back to Django's Site framework, not configured here.)
|
||||
|
||||
##############################################################################
|
||||
# MEDIA AUTH HEADER
|
||||
##############################################################################
|
||||
# Header the backend reads for media auth subrequests.
|
||||
# Upstream default matches the recipe's nginx config (X-Original-URL).
|
||||
# MEDIA_AUTH_ORIGINAL_URL_HEADER=HTTP_X_ORIGINAL_URL
|
||||
|
||||
2
abra.sh
2
abra.sh
@ -2,7 +2,7 @@
|
||||
# Docs: https://docs.coopcloud.tech/maintainers/handbook/#manage-configs
|
||||
export ABRA_ENTRYPOINT_VERSION=v5
|
||||
export NGINX_CONF_VERSION=v3
|
||||
export PG_BACKUP_VERSION=v3
|
||||
export PG_BACKUP_VERSION=v4
|
||||
export MINIO_INITIALIZE_VERSION=v1
|
||||
export MIGRATE_VERSION=v1
|
||||
|
||||
|
||||
37
compose.yml
37
compose.yml
@ -56,6 +56,25 @@ x-common-env: &common-env
|
||||
AI_MODEL: llama
|
||||
# Collaboration
|
||||
COLLABORATION_API_URL: https://$DOMAIN/collaboration/api/
|
||||
# Email app URL (used in email templates; matches recipe DOMAIN)
|
||||
DJANGO_EMAIL_URL_APP: "https://${DOMAIN}"
|
||||
# Conversion (file upload → Yjs via y-provider)
|
||||
CONVERSION_UPLOAD_ENABLED: "${CONVERSION_UPLOAD_ENABLED:-true}"
|
||||
CONVERSION_FILE_MAX_SIZE:
|
||||
CONVERSION_FILE_EXTENSIONS_ALLOWED:
|
||||
CONVERSION_API_ENDPOINT:
|
||||
CONVERSION_API_CONTENT_FIELD:
|
||||
CONVERSION_API_TIMEOUT:
|
||||
CONVERSION_API_SECURE:
|
||||
# Y-Provider base URL + API key (needed when CONVERSION_UPLOAD_ENABLED is true)
|
||||
Y_PROVIDER_API_BASE_URL: http://y-provider:4444/api/
|
||||
Y_PROVIDER_API_KEY_FILE: /run/secrets/y_api_key
|
||||
# DocSpec — converts .docx → BlockNote JSON, then y-provider turns that into Yjs
|
||||
DOCSPEC_API_URL: http://docspec:4000/conversion
|
||||
# Database connection pool
|
||||
DB_PSYCOPG_POOL_ENABLED:
|
||||
# Media auth header (matches recipe nginx by default)
|
||||
MEDIA_AUTH_ORIGINAL_URL_HEADER:
|
||||
|
||||
x-postgres-env: &postgres-env
|
||||
# Postgresql db container configuration
|
||||
@ -91,7 +110,7 @@ services:
|
||||
labels:
|
||||
- "traefik.enable=false"
|
||||
- "coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-120}"
|
||||
- "coop-cloud.${STACK_NAME}.version=0.3.0+v5.1.0"
|
||||
- "coop-cloud.${STACK_NAME}.version=0.3.4+v5.1.0"
|
||||
user: "${DOCKER_USER:-1000}"
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080"]
|
||||
@ -184,6 +203,18 @@ services:
|
||||
secrets:
|
||||
- y_api_key
|
||||
|
||||
docspec:
|
||||
image: ghcr.io/docspecio/api:3.0.2
|
||||
networks:
|
||||
- backend
|
||||
healthcheck:
|
||||
# Use 127.0.0.1, which is required instead of localhost for this healtcheck because of elixir/busybox bindings
|
||||
test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://127.0.0.1:4000/health"]
|
||||
interval: 15s
|
||||
timeout: 5s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
db:
|
||||
image: pgautoupgrade/pgautoupgrade:18-debian
|
||||
networks:
|
||||
@ -212,7 +243,7 @@ services:
|
||||
- postgres_p
|
||||
|
||||
redis:
|
||||
image: redis:8.2.6
|
||||
image: redis:8.8.0
|
||||
healthcheck:
|
||||
test: ["CMD", "redis-cli", "ping"]
|
||||
interval: 15s
|
||||
@ -252,7 +283,7 @@ services:
|
||||
- minio_ru
|
||||
|
||||
web:
|
||||
image: nginx:1.30.0
|
||||
image: nginx:1.31.1
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8083"]
|
||||
interval: 15s
|
||||
|
||||
Reference in New Issue
Block a user