TechnoCore uses a .env file that contains environment variables to enable and disable options and services. Where possible, TechnoCore uses sane defaults that only need to be set to true or be unset.
The easiest way to get started is to
cp example.env .env from the root of the technocore folder and then edit .env with your desired configuration. example.env contains everything you might need to set in order to start run TechnoCore, as well as descriptions of each value.
<SERVICE_NAME>in this documentation you should replace it with your desired service.
<SERVICE_NAME> should match a folder that exist when calling
./tc ls or returns output when calling
./tc ls -al | grep -w <SERVICE_NAME>
Any non zero length value will evalute to true. Even
You can run
./tc enter_secrets to be prompted for secrets you need to provide TechnoCore. For more information, checkout Using TechnoCore: Secrets
DOMAIN=tc.scifi.farm- This env is the base for the URL of all of the services TechnoCore is running.
TZ=America/Denver- See this list for the accepted timezone names.
SERVICE_<SERVICE_NAME>=to disable a given service.
DEFAULT_SERVICE=gravwould point scifi.farm to the grav service and is thus a duplicate of grav.scifi.farm.
LOAD_ENV_...has to start with
LOAD_ENV, but it doesn't matter what the end is. Everything with the
LOAD_ENVprefix is loaded. For more on
LOAD_ENV, see Premade .envs below.
This is not a complete list of values. See example.env for all the options.
In order to make configurations modular and shareable, you can load more .env files by using
LOAD_ENV* variables. TechnoCore comes with a handful of *.env files that contain the configuration needed to fullfil a specific purpose. For example, the services and configurations needed to run this website are loaded with
What you put in the .env will override any values already set in the LOADENV* file, so you can think of settings brought in by LOAD_ENVs as defaults. This allows for flexibility in what parts of the configuring you to add or remove services and options as needed.
Below are a couple of useful .env files, but you can find all available .env files in the TechnoCore GitHub repo.
If you want to load more than one defaults file, then you have to use unique LOAD_ENV_NAMES env vars. If you have the same variable name, for example:
Then grav.env will override dev.env and only grav.env will be loaded. Instead, use something like: