127 lines
4.7 KiB
Plaintext
127 lines
4.7 KiB
Plaintext
========
|
|
Settings
|
|
========
|
|
|
|
Mayan EDMS can be configure via environment variables or by setting files.
|
|
|
|
|
|
.. _environment_variables:
|
|
|
|
Via environment variables
|
|
=========================
|
|
|
|
To use environment variables, lookup the name of the setting you want to
|
|
override in the "Settings" menu. The "Settings" menu is located inside the
|
|
"Setup" main menu. To pass a value via an environment variable append
|
|
``"MAYAN_"`` to the name of the settings option. For example, to change
|
|
the number of documents displayed per page (``COMMON_PAGINATE_BY``, by default 40),
|
|
use::
|
|
|
|
export MAYAN_COMMON_PAGINATE_BY=10
|
|
|
|
Restart Mayan EDMS and the new value will take effect. The "Settings" menu
|
|
can be used to verify if the overridden setting value is being interpreted
|
|
correctly.
|
|
|
|
|
|
.. _configuration_file:
|
|
|
|
Via YAML configuration file
|
|
===========================
|
|
|
|
.. versionadded:: 3.1
|
|
|
|
It is possible to modify the different settings by creating or editing the
|
|
``media/config.yml`` file. This file is formatted in the YAML markup language
|
|
(http://yaml.org/). Here is an example of what the looks like::
|
|
|
|
DOCUMENT_PARSING_AUTO_PARSING: true
|
|
DOCUMENT_PARSING_PDFTOTEXT_PATH: /usr/bin/pdftotext
|
|
EMAIL_BACKEND: django.core.mail.backends.smtp.EmailBackend
|
|
EMAIL_HOST: localhost
|
|
EMAIL_HOST_PASSWORD: ''
|
|
EMAIL_HOST_USER: ''
|
|
EMAIL_PORT: 25
|
|
EMAIL_TIMEOUT: null
|
|
EMAIL_USE_SSL: false
|
|
EMAIL_USE_TLS: false
|
|
FILE_UPLOAD_MAX_MEMORY_SIZE: 2621440
|
|
HOME_VIEW: common:home
|
|
|
|
Every time Mayan EDMS is able to start correctly it will copy the ``config.yml``
|
|
and create a backup copy in the same directory named ``config_backup.yml``.
|
|
This file is used to revert to the last know configuration file known
|
|
to be valid. You can revert manually by copy the file or by using the
|
|
``revertsettings`` management command from the command line.
|
|
|
|
|
|
Via Python settings files
|
|
=========================
|
|
|
|
Another way to configure Mayan EDMS and the one required when more extensive
|
|
setup is required, such as when using external Python libraries, is via
|
|
Python-style, settings files.
|
|
If Mayan EDMS was installed using the Python package a ``mayan_settings``
|
|
folder will created for this purpose. If you installed Mayan EDMS
|
|
according to the :doc:`../chapters/deploying` instructions provided in this
|
|
documentation your ``mayan_settings`` folder should be located in the directory:
|
|
``|MAYAN_MEDIA_ROOT|/mayan_settings/``.
|
|
|
|
If Mayan EDMS was installed using Docker, the ``mayan_settings`` folder
|
|
will be found inside the install Docker volume. If you installed Mayan EDMS
|
|
according to the :doc:`../chapters/docker/index` instructions provided in this
|
|
documentation your ``mayan_settings`` folder should be located in the directory:
|
|
``/docker-volumes/mayan/mayan_settings``.
|
|
|
|
Create a file with any valid name and a ``.py`` extension in the
|
|
``mayan_settings`` folder. The file must starts with a global import of
|
|
``mayan.settings.production``. In the form::
|
|
|
|
from mayan.settings.production import *
|
|
|
|
Now add the corresponding lines to override the default settings.
|
|
In the settings file, it is not necessary to prepend the string ``MAYAN_`` to
|
|
the setting option. For example, to change the number of documents displayed
|
|
per page (``COMMON_PAGINATE_BY``, by default 40),
|
|
use::
|
|
|
|
COMMON_PAGINATE_BY=10
|
|
|
|
versus::
|
|
|
|
export MAYAN_COMMON_PAGINATE_BY=10
|
|
|
|
when using the environment variable method.
|
|
|
|
For this example let's assume the file was saved with the name ``mysettings.py``.
|
|
|
|
The way used to tell Mayan EDMS to import this file will vary based on the
|
|
installation method.
|
|
|
|
For the :doc:`../chapters/deploying` method, the full import path will be
|
|
``mayan.media.mayan_settings.mysettings`` and can be passed via the
|
|
``--settings`` command line argument like this::
|
|
|
|
|MAYAN_BIN| runserver --settings=mayan.media.mayan_settings.mysettings
|
|
|
|
or via the ``DJANGO_SETTINGS_MODULE`` environment variable like this::
|
|
|
|
export DJANGO_SETTINGS_MODULE=mayan.media.mayan_settings.mysettings
|
|
|
|
To make the use of the custom Python setting file permanent, update the ``|MAYAN_SUPERVISOR_CONF|``
|
|
file. In the ``[supervisord]`` section, update the ``environment=`` value of
|
|
``DJANGO_SETTINGS_MODULE`` from the default ``mayan.settings.production`` to
|
|
``mayan.media.mayan_settings.mysettings``. Pay attention to the indentation of
|
|
the ``environment=`` entries.
|
|
|
|
Force supervisor to read the changes and restart using::
|
|
|
|
sudo supervisorctl reread
|
|
sudo supervisorctl restart all
|
|
|
|
For the :doc:`../chapters/docker/index` installation method, the full import path will be
|
|
``mayan_settings.mysettings`` and can only be passed via the
|
|
``MAYAN_SETTINGS_MODULE`` environment variable like this::
|
|
|
|
docker run <...> -e MAYAN_SETTINGS_MODULE=mayan_settings.mysettings
|