docbrown/docs/getting-started/config-env.md
Vaidehi Joshi 1531c182cc
Move .env_sample out of /config directory (#9868)
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.
2020-08-19 18:18:30 +02:00

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