261 lines
9.9 KiB
Plaintext
261 lines
9.9 KiB
Plaintext
# This file controls environment settings for your Funkwhale pod.
|
|
# If you change any of the variables in this file, remember to restart Funkwhale.
|
|
|
|
# See https://docs.funkwhale.audio/administrator/configuration/env-file.html for more information
|
|
|
|
# Required settings
|
|
# -----------------
|
|
# These settings are required for all Funkwhale deployments
|
|
|
|
# The DJANGO_SECRET_KEY is cryptographic key used to secure Django
|
|
# You can generate a random key by running `openssl rand -base64 45`
|
|
|
|
DJANGO_SECRET_KEY=
|
|
|
|
# FUNKWHALE_HOSTNAME is your pod's domain name. Don't include the protocol (for example: `https`).
|
|
# The FUNKWHALE_HOSTNAME must be a root domain or a subdomain (for example: `example.com` or `subdomain.example.com)
|
|
# You can't run Funkwhale on a subpath (for example: `example.com/funkwhale`)
|
|
|
|
FUNKWHALE_HOSTNAME=
|
|
|
|
# Additional required settings for Docker
|
|
# ---------------------------------------
|
|
# If you're running Funkwhale using Docker, you must configure these variables.
|
|
|
|
# Enter the Funkwhale version you want to run.
|
|
# This value is interpolated in the Docker compose file.
|
|
# To use the latest release of Funkwhale, use `latest`.
|
|
# If you want to run the develop branch, use `develop`.
|
|
# To use a specific version, use the full semantic version number (for example: 1.3.0)
|
|
# You don't need to comment this variable out for non-Docker deployments
|
|
|
|
FUNKWHALE_VERSION=latest
|
|
|
|
# Additional required settings for non-Docker deployments
|
|
# -------------------------------------------------------
|
|
# If you run Funkwhale outside of Docker, you must configure these variables.
|
|
|
|
# The DATABASE_URL is the address of your postgres database.
|
|
# Funkwhale uses this value to connect to postgres.
|
|
# This variable uses the following format: `postgresql://<user>:<password>@<host>:<port>/<database>`
|
|
# Uncomment the line below to set your URL.
|
|
# Use the provided value if you followed the Debian installation guide.
|
|
|
|
# DATABASE_URL=postgresql://funkwhale@:5432/funkwhale
|
|
|
|
# The CACHE_URL is the address of your redis instance.
|
|
# Funkwhale uses this value to connect to redis.
|
|
# This variable uses the following format: `redis://<host>:<port>/<database>`
|
|
# To include a password, add it before the hostname.
|
|
# For example: `redis://:<password>@<host>:<port>/<database>`
|
|
# Uncomment the line below to set your URL.
|
|
# Use the provided value if you followed the Debian installation guide.
|
|
|
|
# CACHE_URL=redis://127.0.0.1:6379/0
|
|
|
|
# Network configuration
|
|
# ---------------------
|
|
# Use these variables to configure the network settings of your Funkwhale pod.
|
|
|
|
# The FUNKWHALE_API_IP is the address that serves the Funkwhale API.
|
|
# Change this variable if you host the API on a different IP address.
|
|
|
|
FUNKWHALE_API_IP=127.0.0.1
|
|
|
|
# The FUNKWHALE_API_PORT is the port the Funkwhale API is served on.
|
|
# Change this variable if you host the API on a different port.
|
|
|
|
FUNKWHALE_API_PORT=5000
|
|
|
|
# The REVERSE_PROXY_TYPE refers to the web server you use as a reverse proxy.
|
|
# If you followed the Debian installation guide, you're using `nginx`
|
|
# Available values: `nginx`, `apache2`
|
|
|
|
REVERSE_PROXY_TYPE=nginx
|
|
|
|
# The FUNKWHALE_PROTOCOL is the protocol your pod is served on.
|
|
# In most cases, you will use a secure (`https`) connection.
|
|
# Only change this if you need to serve Funkwhale over an insecure connection.
|
|
# Available values: `https`, `http`
|
|
|
|
FUNKWHALE_PROTOCOL=https
|
|
|
|
# The NGINX_MAX_BODY_SIZE variable controls what size of files Nginx allows.
|
|
# Adjust this variable to set the size of individual files that users can upload.
|
|
|
|
NGINX_MAX_BODY_SIZE=100M
|
|
|
|
# The FUNKWHALE_FRONTEND_PATH variable controls where frontend files are served from.
|
|
# Only change this if you're serving the Funkwhale web app from a custom directory.
|
|
|
|
FUNKWHALE_FRONTEND_PATH=/srv/funkwhale/front/dist
|
|
|
|
# The FUNKWHALE_WEB_WORKERS variable sets the number of web workers to start in parallel.
|
|
# More workers means the server can handle more concurrent requests.
|
|
# More workers also increases the memory/CPU usage of your server.
|
|
|
|
FUNKWHALE_WEB_WORKERS=4
|
|
|
|
# The CELERYD_CONCURRENCY variable controls how many celeryworker processes run.
|
|
# Celery workers handle background tasks (such as file imports and federation messaging).
|
|
# The more processes a worker gets, the more tasks it can perform in the background.
|
|
# More workers also increases the memory/CPU usage of your server.
|
|
# If set to `0`, celery will create one worker per CPU core on your server.
|
|
|
|
CELERYD_CONCURRENCY=0
|
|
|
|
# Where media files (such as album covers or audio tracks) should be stored
|
|
# on your system?
|
|
# (Ensure this directory actually exists)
|
|
|
|
MEDIA_ROOT=/srv/funkwhale/data/media
|
|
|
|
# Where static files (such as API css or icons) should be compiled
|
|
# on your system?
|
|
# (Ensure this directory actually exists)
|
|
|
|
STATIC_ROOT=/srv/funkwhale/data/static
|
|
|
|
# Email configuration
|
|
# -------------------
|
|
# Use these variables to configure email sending on your pod.
|
|
# Funkwhale uses email to confirm user identity and allow users to self-serve password resets.
|
|
|
|
# The EMAIL_CONFIG variable controls how email is sent.
|
|
# You can send emails using SMTP, or output to a different source.
|
|
# Use `consolemail://` to output emails to the console
|
|
# Use `dummymail://` to disable sending email
|
|
# If you want to send email, enter your SMTP server settings in the following format:
|
|
# `<protocol>://<user>:<password>@<host>:<port>`
|
|
# For example:
|
|
# `smtp://user:password@youremail.host:25`
|
|
# `smtp+ssl://user:password@youremail.host:465`
|
|
# `smtp+tls://user:password@youremail.host:587`
|
|
# If your username contains special characters, you need to URL encode it.
|
|
# You can use Python to encode your username as follows:
|
|
# `python3 -c 'import urllib.parse; print(urllib.parse.quote_plus("noreply@youremail.host"))'`
|
|
|
|
EMAIL_CONFIG=consolemail://
|
|
|
|
# The ACCOUNT_EMAIL_VERIFICATION_ENFORCE variable allows you to require users to verify their email.
|
|
|
|
ACCOUNT_EMAIL_VERIFICATION_ENFORCE=false
|
|
|
|
# The DEFAULT_FROM_EMAIL variable sets the email address used to send emails to users.
|
|
# This is the address that users see when they receive an email from your pod.
|
|
|
|
# DEFAULT_FROM_EMAIL=noreply@yourdomain
|
|
|
|
# Storage configuration
|
|
# ---------------------
|
|
# Use these variables to configure S3-compatible storage.
|
|
|
|
# The AWS_S3_ENDPOINT_URL is the full URL of your S3-compatible storage service.
|
|
# You only need to configure this variable if you use a service other than Amazon S3.
|
|
# For example: `https://minio.mydomain.com`
|
|
|
|
# AWS_S3_ENDPOINT_URL=
|
|
|
|
# If you serve media from Amazon S3, you need to specify which AWS region your bucket is in.
|
|
|
|
# If you are using Amazon S3 to serve media directly, you will need to specify your region
|
|
# For example: `eu-west-2`
|
|
|
|
# AWS_S3_REGION_NAME=
|
|
|
|
# Use the following settings to configure access to your bucket.
|
|
# These values are available in the interface of your storage provider.
|
|
|
|
# AWS_ACCESS_KEY_ID=
|
|
|
|
# AWS_SECRET_ACCESS_KEY=
|
|
|
|
# AWS_STORAGE_BUCKET_NAME=
|
|
|
|
# The AWS_LOCATION variable controls which directory your Funkwhale files are stored in.
|
|
# By default, Funkwhale stores files in the root of your S3 bucket.
|
|
|
|
# AWS_LOCATION=
|
|
|
|
# The AWS_QUERYSTRING_EXPIRE variable controls how long generated URLs are valid for.
|
|
# Longer expiry times reduce security, but make caching more effective.
|
|
# The default value is 3600 (60 minutes). The maximum accepted value is 604800 (7 days).
|
|
|
|
# AWS_QUERYSTRING_EXPIRE=
|
|
|
|
# The AWS_DEFAULT_ACL variable allows you to set custom Access Control List settings for object uploads.
|
|
# For example: `public-read`
|
|
# Funkwhale uses the default settings provided by boto3 by default.
|
|
# Available options can be found here: https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl
|
|
|
|
# AWS_DEFAULT_ACL=
|
|
|
|
# If you want to serve media directly from your S3 bucket rather than through a proxy,
|
|
# set this to false
|
|
# PROXY_MEDIA=false
|
|
|
|
# Django configuration
|
|
# --------------------
|
|
|
|
# The DJANGO_SETTINGS_MODULE variable controls what settings are loaded by Django.
|
|
# Don't change this variable unless you need to use a custom settings module.
|
|
|
|
DJANGO_SETTINGS_MODULE=config.settings.production
|
|
|
|
# The DJANGO_ADMIN_URL variable is the subpath used to access the Django admin panel.
|
|
# By default, you can access Django at `<yourdomain>/api/admin`
|
|
|
|
# DJANGO_ADMIN_URL=^api/admin/
|
|
|
|
# In-place import configuration
|
|
# -----------------------------
|
|
# You can safely leave those settings uncommented if you don't plan to use
|
|
# in place imports.
|
|
# Typical docker setup:
|
|
# MUSIC_DIRECTORY_PATH=/music # docker-only
|
|
# MUSIC_DIRECTORY_SERVE_PATH=/srv/funkwhale/data/music
|
|
# Typical non-docker setup:
|
|
# MUSIC_DIRECTORY_PATH=/srv/funkwhale/data/music
|
|
# # MUSIC_DIRECTORY_SERVE_PATH= # stays commented, not needed
|
|
|
|
MUSIC_DIRECTORY_PATH=/srv/funkwhale/data/music
|
|
MUSIC_DIRECTORY_SERVE_PATH=/srv/funkwhale/data/music
|
|
|
|
# Feature configuration
|
|
# ---------------------
|
|
# Use these variables to control optional features on Funkwhale
|
|
|
|
# Typesense is a search engine that Funkwhale uses to improve content discovery
|
|
# To use Typesense, set the TYPESENSE_API_KEY variable
|
|
# You can generate a random key by running `openssl rand -base64 45`
|
|
|
|
# TYPESENSE_API_KEY=
|
|
|
|
# Logging configuration
|
|
# ---------------------
|
|
# Use these variables to configure logging on your Funkwhale pod.
|
|
|
|
# The LOGLEVEL variable controls how verbose your Funkwhale server logs are.
|
|
# Available values: `debug`, `info`, `warning`, `error`, `critical`
|
|
|
|
LOGLEVEL=error
|
|
|
|
# Funkwhale supports error logging using Sentry-compatible APIs.
|
|
# The FUNKWHALE_SENTRY_DSN variable controls where Sentry sends these logs.
|
|
# You can use the value provided to send logs directly to the Funkwhale project.
|
|
|
|
# FUNKWHALE_SENTRY_DSN=https://5840197379c64f65aad3c5c09274994d@am.funkwhale.audio/1
|
|
|
|
# LDAP settings
|
|
# -------------
|
|
# These variables enable you to authenticate on your Funkwhale instance using LDAP.
|
|
# See https://docs.funkwhale.audio/administrator/configuration/ldap.html for more information.
|
|
|
|
# LDAP_ENABLED=False
|
|
# LDAP_SERVER_URI=ldap://your.server:389
|
|
# LDAP_BIND_DN=cn=admin,dc=domain,dc=com
|
|
# LDAP_BIND_PASSWORD=bindpassword
|
|
# LDAP_SEARCH_FILTER=(|(cn={0})(mail={0}))
|
|
# LDAP_START_TLS=False
|
|
# LDAP_ROOT_DN=dc=domain,dc=com
|