####################################################################################################
###### DIRECTUS ####################################################################################
####################################################################################################
#
# These values set environment variables which modify core settings of Directus.
#
# Values in square brackets are the default values.
#
# The following options are not all possible options. For more, see
# https://docs.directus.io/self-hosted/config-options/
#
####################################################################################################
####################################################################################################

### General

# IP or host the API listens on ["0.0.0.0"]
HOST=0.0.0.0

# The port Directus will run on [8055]
PORT=8055

# The URL where your API can be reached on the web. It is also used for things like OAuth redirects,
# forgot-password emails, and logos that needs to be publicly available on the internet. ["/"]
# PUBLIC_URL=http://localhost:8055
PUBLIC_URL=https://admin.dev.civokram.com

# What level of detail to log. [info]
# "fatal", "error", "warn", "info", "debug", "trace", "silent"
# LOG_LEVEL=info

# Render the logs human readable (pretty) or as JSON (raw), [pretty]
# "pretty", "raw"
# LOG_STYLE=pretty

# Controls the maximum request body size. Accepts number of bytes, or human readable string ["1mb"]
# MAX_PAYLOAD_SIZE=1mb

# Where to redirect to when navigating to /. Accepts a relative path, absolute URL, or false to disable ["./admin"]
# ROOT_REDIRECT=./admin

# Whether or not to serve the Admin App under /admin. [true]
# SERVE_APP=true

# Whether or not to enable GraphQL Introspection [true]
# GRAPHQL_INTROSPECTION=true

# The maximum number of items for batch mutations when creating, updating and deleting. ["Infinity"]
# MAX_BATCH_MUTATION=Infinity

####################################################################################################
### Database

# All DB_* environment variables are passed to the connection configuration of a Knex instance.
# Based on your project's needs, you can extend the DB_* environment variables with any config
# you need to pass to the database instance.

DB_CLIENT=sqlite3
DB_FILENAME=/data/data.db

## Postgres
# DB_CLIENT=pg
# DB_HOST=localhost
# DB_PORT=5432
# DB_DATABASE=directus
# DB_USER=postgres
# DB_PASSWORD=secret

## CockroachDB
# DB_CLIENT=cockroachdb
# DB_HOST=localhost
# DB_PORT=26257
# DB_DATABASE=directus
# DB_USER=root
# DB_PASSWORD=

## MySQL 8
# DB_CLIENT=mysql
# DB_HOST=localhost
# DB_PORT=3306
# DB_DATABASE=directus
# DB_USER=root
# DB_PASSWORD=secret

## MariaDB
# DB_CLIENT=mysql
# DB_HOST=localhost
# DB_PORT=3306
# DB_DATABASE=directus
# DB_USER=root
# DB_PASSWORD=secret

## MS SQL
# DB_CLIENT=mssql
# DB_HOST=localhost
# DB_PORT=1343
# DB_DATABASE=directus
# DB_USER=sa
# DB_PASSWORD=Test@123

## OracleDB
# DB_CLIENT=oracledb
# DB_CONNECT_STRING=localhost:1521/XE
# DB_USER=secretsysuser
# DB_PASSWORD=secretpassword

## SQLite Example
# DB_CLIENT=sqlite3
# DB_FILENAME=./data.db

## MySQL 5.7
# DB_CLIENT=mysql
# DB_HOST=localhost
# DB_PORT=3306
# DB_DATABASE=directus
# DB_USER=root
# DB_PASSWORD=secret

####################################################################################################
### Rate Limiting

# Whether or not to enable rate limiting on the API [false]
RATE_LIMITER_ENABLED=false

# Where to store the rate limiter counts [memory]
# memory, redis, memcache
RATE_LIMITER_STORE=memory
# RATE_LIMITER_REDIS=redis://@127.0.0.1:5105
# RATE_LIMITER_MEMCACHE=localhost:5109

# The amount of allowed hits per duration [50]
RATE_LIMITER_POINTS=25

# The time window in seconds in which the hits are counted [1]
RATE_LIMITER_DURATION=1

####################################################################################################
### Caching

# Whether or not caching is enabled. [false]
CACHE_ENABLED=false

# How long the cache is persisted ["5m"]
# CACHE_TTL=30m

# How to scope the cache data ["directus-cache"]
# CACHE_NAMESPACE=directus-cache

# Automatically purge the cache on create, update, and delete actions. [false]
# CACHE_AUTO_PURGE=true

# memory | redis | memcache
CACHE_STORE=memory

# How long assets will be cached for in the browser. Sets the max-age value of the Cache-Control header ["30d"]
ASSETS_CACHE_TTL=30d

# CACHE_REDIS=redis://@127.0.0.1:5105
# CACHE_MEMCACHE=localhost:5109

####################################################################################################
### File Storage

# A CSV of storage locations (eg: local,digitalocean,amazon) to use. You can use any names you'd like for these keys ["local"]
STORAGE_LOCATIONS=local
STORAGE_LOCAL_DRIVER=local
STORAGE_LOCAL_ROOT=/data/uploads

## S3 Example (location name: DigitalOcean)
# STORAGE_DIGITALOCEAN_DRIVER=s3
# STORAGE_DIGITALOCEAN_KEY=abcdef
# STORAGE_DIGITALOCEAN_SECRET=ghijkl
# STORAGE_DIGITALOCEAN_ENDPOINT=https://ams3.digitaloceanspaces.com
# STORAGE_DIGITALOCEAN_BUCKET=my-files
# STORAGE_DIGITALOCEAN_REGION=ams3

## Google Cloud Storage Example (location name: Google)
# STORAGE_GOOGLE_DRIVER=gcs
# STORAGE_GOOGLE_KEY_FILENAME=abcdef
# STORAGE_GOOGLE_BUCKET=my-files

## A comma-separated list of metadata keys to collect during file upload. Use * for all
# Extracting all metadata might cause memory issues when the file has an unusually large set of metadata
# [ifd0.Make,ifd0.Model,exif.FNumber,exif.ExposureTime,exif.FocalLength,exif.ISO]
# FILE_METADATA_ALLOW_LIST=

####################################################################################################
### Security

# Unique identifier for the project
# KEY=xxxxxxx-xxxxxx-xxxxxxxx-xxxxxxxxxx
KEY=78457793-f4ea-4057-a9ae-87d0f6d32cc8

# Secret string for the project
# SECRET=abcdef
SECRET=cJweH2dRpkM515hQJZSR64jiYCb6QJrZ

# The duration that the access token is valid ["15m"]
ACCESS_TOKEN_TTL=15m

# The duration that the refresh token is valid, and also how long users stay logged-in to the App ["7d"]
REFRESH_TOKEN_TTL=7d

# Whether or not to use a secure cookie for the refresh token in cookie mode [false]
REFRESH_TOKEN_COOKIE_SECURE=false

# Value for sameSite in the refresh token cookie when in cookie mode ["lax"]
REFRESH_TOKEN_COOKIE_SAME_SITE=lax

# Name of refresh token cookie ["directus_refresh_token"]
REFRESH_TOKEN_COOKIE_NAME=directus_refresh_token

# Which domain to use for the refresh cookie. Useful for development mode.
# REFRESH_TOKEN_COOKIE_DOMAIN

# The duration in milliseconds that a login request will be stalled for,
# and it should be greater than the time taken for a login request with an invalid password [500]
# LOGIN_STALL_TIME=500

# Whether or not to enable the CORS headers [false]
CORS_ENABLED=true

# Value for the Access-Control-Allow-Origin header. Use true to match the Origin header, or provide a domain or a CSV of domains for specific access [false]
CORS_ORIGIN=true

# Value for the Access-Control-Allow-Methods header [GET,POST,PATCH,DELETE]
CORS_METHODS=GET,POST,PATCH,DELETE

# Value for the Access-Control-Allow-Headers header [Content-Type,Authorization]
CORS_ALLOWED_HEADERS=Content-Type,Authorization

# Value for the Access-Control-Expose-Headers header [Content-Range]
CORS_EXPOSED_HEADERS=Content-Range

# Whether or not to send the Access-Control-Allow-Credentials header [true]
CORS_CREDENTIALS=true

# Value for the Access-Control-Max-Age header [18000]
CORS_MAX_AGE=18000

####################################################################################################
### Argon2

# How much memory to use when generating hashes, in KiB [4096]
# HASH_MEMORY_COST=81920

# The length of the hash function output in bytes [32]
# HASH_HASH_LENGTH=32

# The amount of passes (iterations) used by the hash function. It increases hash strength at the cost of time required to compute [3]
# HASH_TIME_COST=10

# The amount of threads to compute the hash on. Each thread has a memory pool with HASH_MEMORY_COST size [1]
# HASH_PARALLELISM=2

# The variant of the hash function (0: argon2d, 1: argon2i, or 2: argon2id) [2]
# HASH_TYPE=2

# An extra and optional non-secret value. The value will be included B64 encoded in the parameters portion of the digest []
# HASH_ASSOCIATED_DATA=foo

####################################################################################################
### Auth Providers

# A comma-separated list of auth providers []
AUTH_PROVIDERS=
# AUTH_PROVIDERS=github

# AUTH_GITHUB_DRIVER=oauth2
# AUTH_GITHUB_CLIENT_ID=73e...4b
# AUTH_GITHUB_CLIENT_SECRET=b9...98
# AUTH_GITHUB_AUTHORIZE_URL=https://github.com/login/oauth/authorize
# AUTH_GITHUB_ACCESS_URL=https://github.com/login/oauth/access_token
# AUTH_GITHUB_PROFILE_URL=https://api.github.com/user
# AUTH_GITHUB_ALLOW_PUBLIC_REGISTRATION=true
# AUTH_GITHUB_DEFAULT_ROLE_ID=82424427-c9d4-4289-8bc5-ed1bf8422c90
# AUTH_GITHUB_ICON=github
# AUTH_GITHUB_LABEL=GitHub
# AUTH_GITHUB_EMAIL_KEY=email
# AUTH_GITHUB_IDENTIFIER_KEY=login

####################################################################################################
### Extensions

# Path to your local extensions folder ["./extensions"]
EXTENSIONS_PATH=./extensions

# Automatically reload extensions when they have changed [false]
EXTENSIONS_AUTO_RELOAD=false

####################################################################################################
### Email

# Email address from which emails are sent ["no-reply@directus.io"]
EMAIL_FROM=no-reply@directus.io

# What to use to send emails. One of
# sendmail, smtp, mailgun, sendgrid, ses.
EMAIL_TRANSPORT=sendmail
EMAIL_SENDMAIL_NEW_LINE=unix
EMAIL_SENDMAIL_PATH=/usr/sbin/sendmail

## Email (Sendmail Transport)

# What new line style to use in sendmail ["unix"]
# EMAIL_SENDMAIL_NEW_LINE=unix

# Path to your sendmail executable ["/usr/sbin/sendmail"]
# EMAIL_SENDMAIL_PATH=/usr/sbin/sendmail

## Email (SMTP Transport)
# EMAIL_SMTP_HOST=localhost

# Use SMTP pooling
# EMAIL_SMTP_POOL=true
# EMAIL_SMTP_PORT=465
# EMAIL_SMTP_SECURE=false # Use TLS
# EMAIL_SMTP_IGNORE_TLS=false
# EMAIL_SMTP_USER=username
# EMAIL_SMTP_PASSWORD=password

## Email (Mailgun Transport)
# EMAIL_MAILGUN_API_KEY=key-1234123412341234
# EMAIL_MAILGUN_DOMAIN=a domain name from https://app.mailgun.com/app/sending/domains

## Email (SendGrid Transport)
# EMAIL_SENDGRID_API_KEY=key-1234123412341234
