Config
Zipline is primarily configured through environment variables. These can be set in a .env file in the root of the project, or through docker-compose.yml if using Docker.
Most of Zipline's settings are also configurable through the settings dashboard.
By default, only the DATABASE_URL and CORE_SECRET environment variables are required. The rest are optional and have default values.
It is important that the CORE_SECRET is not easily guessable. This secret is
used to sign website cookies, and should be kept private. If the secret is
comprimised, it is recommended to change it immediately, as it can be used to
gain unauthorized access to the website.
Example
DATABASE_URL=postgresql://user:password@localhost:5432/ziplineCORE_SECRET="secret"CORE_PORT=3000CORE_HOSTNAME=0.0.0.0DATASOURCE_TYPE=localDATASOURCE_LOCAL_DIRECTORY=./uploads
Reading Environment Variables from Files
If you want to set certain environment variables through file content, you can use the _FILE suffix.
For example, instead of setting the CORE_SECRET variable directory, you can create a file named secret.txt containing the secret, and set the environment variable to the relative/full path to that file.
# Instead of this:CORE_SECRET="hello"# You can do this:CORE_SECRET_FILE=./secret.txt
This is useful for managing secrets in containerized environments, where secrets can be mounted as files. If using docker secrets, see this page for more information (secrets can be managed within docker compose files as well!).
Links
Variables in the core, datasource, and ssl categories can only be configured through environment variables.
All other variables can be set either through the settings dashboard or via environment variables listed in the settings documentation.