Environment configuration reference¶
The Catalogi Importer can be ran both as a Docker container or directly on a VPS or dedicated server. It relies on other services, such as database and cache backends, which can be configured through environment variables.
Available environment variables¶
DJANGO_SETTINGS_MODULE: which environment settings to use. Available options:
SECRET_KEY: secret key that’s used for certain cryptographic utilities. You should generate one via miniwebtool
ALLOWED_HOSTS: A comma separated (without spaces!) list of domains that serve the installation. Used to protect against
Hostheader attacks. Defaults to
dockerenvironment and defaults to
DB_HOST: Hostname of the PostgreSQL database. Defaults to
dockerenvironment, otherwise defaults to
DB_USER: Username of the database user. Defaults to
DB_PASSWORD: Password of the database user. Defaults to
DB_NAME: Name of the PostgreSQL database. Defaults to
DB_PORT: Port number of the database. Defaults to
CELERY_BROKER_URL: URL for the Redis task broker for Celery. Defaults to
CELERY_RESULT_BACKEND: URL for the Redis result broker for Celery. Defaults to
ADMINS: Comma seperated list (without spaces!) of e-mail addresses to sent an email in the case of any errors. Defaults to an empty list.
SITE_ID: The database ID of the site object. Defaults to
DEBUG: Used for more traceback information on development environment. Various other security settings are derived from this setting! Defaults to
devenvironment, otherwise defaults to
IS_HTTPS: Used to construct absolute URLs and controls a variety of security settings. Defaults to the inverse of
SUBPATH: If hosted on a subpath, provide the value here. If you provide
/gateway, the component assumes its running at the base URL:
https://somedomain/gateway/. Defaults to an empty string.
SENTRY_DSN: URL of the sentry project to send error reports to. Defaults to an empty string (ie. no monitoring).
Specifying the environment variables¶
There are two strategies to specify the environment variables:
provide them in a
start the component processes (with uwsgi/gunicorn/celery) in a process manager that defines the environment variables
Providing a .env file¶
This is the most simple setup and easiest to debug. The
.env file must be
at the root of the project - i.e. on the same level as the
src directory (
NOT in the
The syntax is key-value:
Provide the envvars via the process manager¶
If you use a process manager (such as supervisor/systemd), use their techniques to define the envvars. The component will pick them up out of the box.