The Directus service templates were missing CORS configuration, causing preflight OPTIONS requests to fail when connecting from frontend apps. Users had to manually edit the compose file to add CORS variables. Add sensible CORS defaults (enabled with dynamic origin matching) to both directus.yaml and directus-with-postgresql.yaml templates. All values are user-overridable via the Coolify UI. Fixes #5024
35 lines
1.2 KiB
YAML
35 lines
1.2 KiB
YAML
# 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
|
|
|
|
services:
|
|
directus:
|
|
image: directus/directus:11
|
|
volumes:
|
|
- directus-database:/directus/database
|
|
- directus-uploads:/directus/uploads
|
|
- directus-extensions:/directus/extensions
|
|
- directus-templates:/directus/templates
|
|
environment:
|
|
- SERVICE_URL_DIRECTUS_8055
|
|
- KEY=$SERVICE_BASE64_64_KEY
|
|
- SECRET=$SERVICE_BASE64_64_SECRET
|
|
- ADMIN_EMAIL=${ADMIN_EMAIL:-admin@example.com}
|
|
- ADMIN_PASSWORD=$SERVICE_PASSWORD_ADMIN
|
|
- DB_CLIENT=sqlite3
|
|
- DB_FILENAME=/directus/database/data.db
|
|
- WEBSOCKETS_ENABLED=true
|
|
- CORS_ENABLED=${CORS_ENABLED:-true}
|
|
- CORS_ORIGIN=${CORS_ORIGIN:-true}
|
|
- CORS_METHODS=${CORS_METHODS:-GET,POST,PATCH,DELETE,OPTIONS}
|
|
- CORS_ALLOWED_HEADERS=${CORS_ALLOWED_HEADERS:-Content-Type,Authorization}
|
|
- CORS_CREDENTIALS=${CORS_CREDENTIALS:-true}
|
|
healthcheck:
|
|
test:
|
|
["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8055/admin/login"]
|
|
interval: 5s
|
|
timeout: 20s
|
|
retries: 10
|