Skip to content

Instantly share code, notes, and snippets.

@asa1984
Last active December 10, 2024 11:55
Show Gist options
  • Select an option

  • Save asa1984/01ebb1828dbf00a23411a02f463ec8d6 to your computer and use it in GitHub Desktop.

Select an option

Save asa1984/01ebb1828dbf00a23411a02f463ec8d6 to your computer and use it in GitHub Desktop.
dotenvx / asa1984 Advent Calendar 2024 9日目

dotenvx

CI やデプロイに用いるシークレット情報は基本的に環境変数を用いて注入しますが、環境変数の管理って面倒ですよね。.env ファイルを共有したり、GitHub Actions で使う環境変数をリポジトリの設定から追加したり、とにかく面倒です。

そこで dotenvx だッ!

〜「asa1984 Advent Calendar 2024」9日目・開幕 〜

そうだ、暗号化しよう

dotenvx は .env ファイルを暗号化し、リポジトリで直接 .env ファイルを管理できるようにします。環境変数または .env.keys ファイルから dotenvx に秘密鍵を渡すことで実際に中身を取り出すことができます。

dotenvx は、JS のライブラリだけでなく、CLI も提供しているので、言語を問わず利用することができます。暗号化機能を利用せず、.env ファイルからそのまま環境変数を読み出すツールとしても使えます。

通常の環境変数の管理方式だと設定漏れや共有の難しさなどがありますが、暗号化すれば管理すべきシークレットが1つだけになり、.env をそのままリポジトリで管理できるので共有も楽です。単一の秘密鍵で全てを管理すると聞くと不安になる人もいるかもしれませんが、管理すべき秘密情報は少ないほどいいので(なぜなら1つ漏れたら時点で終わりだから)、むしろ理にかなっているでしょう。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment