The `.env` file shouldn't live in the `/config` directory when it is created, but currently, the `.env_sample` file lives within `/config`. This can be confusing and cause ENV var issues if someone duplicates `.env_sample` and renames it to `.env`, because none of their ENV variables will get picked up, since their `.env` file will mistakenly end up in `/config`. This change moves `.env_sample` out of `/config`, and updates the documentation/relevant .yml files accordingly.
39 lines
1.2 KiB
Markdown
39 lines
1.2 KiB
Markdown
---
|
|
title: Configuring Environment Variables
|
|
---
|
|
|
|
# Configuring environment variables and secret keys
|
|
|
|
Take a look at `Envfile`. This file lists all the `ENV` variables we use and
|
|
provides a fake default for any missing keys.
|
|
|
|
The [backend guide][backend_guide] will show you how to get free API keys for
|
|
additional services that may be required to run certain parts of the app.
|
|
|
|
To set up keys for your local instance of Forem, you'll need to create an `.env`
|
|
file. You can do this by copying the file called `.env_sample` in the app's main
|
|
directory:
|
|
|
|
```shell
|
|
cp .env_sample .env
|
|
```
|
|
|
|
Then, add each key you need to the `.env` file. For example, if you're setting
|
|
up GitHub authentication:
|
|
|
|
```shell
|
|
export GITHUB_KEY="SOME_REAL_SECURE_KEY_HERE"
|
|
export GITHUB_SECRET="ANOTHER_REAL_SECURE_KEY_HERE"
|
|
```
|
|
|
|
(Don't worry, your `.env` file is ignored by git)
|
|
|
|
If you are missing `ENV` variables when you boot your application you will see a
|
|
warning message in your logs when you try to access that variable
|
|
`Unset ENV variable: xyz`.
|
|
|
|
Only certain features require "real" keys, so you may be able to add them as you
|
|
work on different areas of the application.
|
|
|
|
[backend_guide]: /backend
|
|
[envied]: https://rubygems.org/gems/envied
|