LoginSignup
3
1

envchain + direnv で実現する安全な環境変数の保存方法

Last updated at Posted at 2021-04-23

envchain

  • Mac の keychainにキーバリュー形式で値を保存してくれる。
  • 従って、環境変数をファイルにベタガキしなくて良くなる!
$ envchain --set <namespace> <env>

📝 削除したい時には、「キーチェーンアクセス」アプリケーション上で削除する。envchainには削除コマンドが見当たらないので。

direnv

  • 所定のディレクトリに移動した際に自動で.envrcファイルを実行して環境変数がロードされ、そのディレクトリを出たら無効化される

以下の方法で設定できる。

(1).zshrcファイルを編集。

.zshrc
export EDITOR=code
eval "$(direnv hook zsh)"

(2)所定のディレクトリで$ direnv editを実行し、.evnrcファイルを編集する。.envrcの中ではこのような関数を使えるのでcheck it out。

envchain + direnv で実現する安全な環境変数の保存方法

  1. 有効にしたい環境変数を$ envchain --set <namespace> <env>でセット。
  2. このnamespaceに含まれる環境変数を有効にしたいディレクトリのルートにおいて、$direnv editを実行し.envrcファイルを以下のように編集する。
.envrc
direnv_load envchain <namespace> direnv dump

# If you want to use this in a nested envrc structure, this adds envs configured in the parent directory.
source_up ..

終わり!

追記

自分の手元では.env と.envrc を両方おくと、.envrc のみしか

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1