$ cat "dev63.hatenablog.com/entry/2024/07/21/070626.md"
// ブログエントリー — 2024/7/21

dotenvとホストマシンで環境変数が競合する時のための起動スクリプト

結構ホストマシンの環境変数が勝って、
どこで設定されているのかわからない時があるため作成。

実際に運用するとなると、環境変数を消してもshell上に残っていると消えないので、
仕組みの理解ができていないと、考えることが増える可能性はありそう。

#!/bin/bash

# .env ファイルのパスを指定
dotenv_path="./.env.development"

# .env ファイルが存在するか確認
if [ ! -f "$dotenv_path" ]; then
    echo ".env file not found"
    exit 1
fi

# .env ファイルから環境変数を読み込み、エクスポートする
echo "=============================="
while IFS='=' read -r key value
do
  # 空行またはコメント行をスキップ
  [[ "$key" =~ ^#.*$ ]] || [[ -z "$key" ]] && continue
  # 環境変数をエクスポート
  export "$key=$value"
  echo "export $key=$value"
done < "$dotenv_path"
echo "Environment variables are set."
echo "=============================="

# アプリケーションの起動コマンド
bin/rails server
ENTRY: dev63.hatenablog.com/entry/2024/07/21/070626.md
DATE: 2024/7/21
WORDS: 78