AI活用の教科書

環境変数

Environment Variableかんきょうへんすう

ひとことで言うと

プログラムの外側から渡す設定値。コードに書かず、環境ごとに差し替えられる仕組みです。

📖 もうちょい詳しく

何が新しいの?

環境変数そのものは新しい技術ではありませんが、アプリを「手元のパソコン」と「本番のサーバー」など、いくつもの場所で動かすようになって、あらためて大事にされています。場所ごとに接続先やパスワードが違うので、その違いだけを外から渡したい、という考え方です。

どうやって動いてるの?

環境変数は「名前」と「値」のペアです。たとえば DATABASE_URL=... のように決めておきます。プログラムは動くときにこの値を読みに行き、自分の中の設定として使います。値はコードの外側(OSやサーバーの設定、専用ファイルなど)に置くので、プログラム自体を書き換えなくても中身を差し替えられます。

何ができるの?

同じプログラムのまま、開発用と本番用で接続先を切り替えられます。APIキーや合言葉のような秘密の値を、コードに直接書かずに渡せます。コードはみんなで共有しても、秘密の値は各自の環境にだけ置く、という分け方ができます。

🌱 身近なたとえ

引き出しのラベルで例えると分かりやすいです。引き出しに「鍵」「住所」とラベル(名前)を貼り、中身(値)はその場その場で入れ替えます。家のキッチンと職場のロッカーでは、同じ「鍵」ラベルでも入っている鍵は別物です。プログラムは「鍵を取って」と言うだけで、置かれた場所に合った中身を受け取れます。

✅ まず覚えるポイント

  • 環境変数は「名前」と「値」のペアの設定です
  • 値をコードの外側に置くので、プログラムを変えずに差し替えられます
  • 開発用・本番用など、環境ごとに値を切り替える用途に向いています
  • APIキーやパスワードなど、秘密の値を渡すときによく使われます
  • ローカルでは .env という設定ファイルにまとめることが多いです
  • 秘密の値が入った設定ファイルは、共有リポジトリに上げないのが基本です

🧭 よくある勘違い

環境変数に入れれば安全なの?

「コードに書かない」だけで、それ自体が暗号化されるわけではありません。値を見られる人には見えますし、設定ファイルをうっかり共有してしまえば漏れます。コードへの直書きより安全に運用しやすい、という位置づけです。

コードに直接書くのと何が違うの?

直接書くと、その値を変えるたびにコードを書き換える必要があり、秘密の値もコードと一緒に残ってしまいます。環境変数なら値だけを外から差し替えられ、コードと秘密を分けて扱えます。

環境変数って難しい設定なの?

特別な技術というより、「名前をつけて値を外に置く」だけの素朴な仕組みです。最初は接続先やキーを1つ置いてみるところから始められます。

🧩 関連して覚えると楽な言葉

  • APIキー: 外部サービスを使うための合言葉。環境変数で渡すことが多い値です
  • CI/CD: コードの確認や公開を自動化する仕組み。ここでも環境変数で設定を渡します
  • 本番環境: 実際の利用者が使う、本番のサービスが動いている場所。開発用とは違う接続先やキーを環境変数で渡します
  • コンテナ: アプリを必要な道具ごと箱に詰めて動かす仕組み。接続先などの設定を環境変数から受け取って動きます

🏁 ひとことでまとめ

設定や秘密の値だけをコードの外に出し、動く場所に合わせて差し替えられるようにする仕組みです。