Docker環境でDjangoのSECRET_KEYをプロジェクトの環境変数として切り出す方法

Djangoのsettings.pyにはデフォルトでSECRET_KEYが設定されていています。

よくGitHubを漁っているとこのSECRET_KEYをsettings.pyに置きっぱなしでpushしてしまっている人をよく見ます。

これはセキュリティ上あまりよろしくなく、git管理は推奨されない値なので切り出して管理しておくのが望ましいとされています。

切り出し方法は色々とありますが、今回はDocker(docker-compose)環境のDjangoプロジェクト内に環境変数用のファイルを作成してsettings.pyからパスを指定してくる方法を紹介します。

論よりコード

プロジェクトファイル内に新規に環境変数を定義する用の.envを作成してその中にSECRET_KEYを切り出します。

切り出した後は.envをしっかり.gitignoreに追記してください。

~/.env
SECRET_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
~/プロジェクト名/settings.py
~~~
# SECURITY WARNING: keep the secret key used in production secret!
# 環境変数からSECRET_KEYを取得する
SECRET_KEY = "../.env"

~~~

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です