😥
APIキーなどの追加で.envの更新したいときのやり方
はじめに
メンターに助けてもらったことを自分なりにまとめて書いてます。自分のエラーが他の人となんか違うって思って書き起こしました。
前提
開発環境 Cloud9(AWS)
本番環境 EC2(AWS)
.envに反映されているかの確認方法
.envについて忘れがちなこと
話に入る前に.envファイルってGit Hubに上げないのは知っていますか?
まぁざっくりいうと機密情報をクラウドにあげないためです。
gitignoreファイルに/.envを記述すればGit Hubに上がらないので記述し忘れに注意ですよ!
gitignore
/.env
そもそも本番環境でどうやって確認方法するんだ…?
では本番環境の確認方法ですね!結構簡単です。
本番環境のEC2にログインして
[username:~/environment/アプリケーション名] $ cat .env
このコマンドで確認できます。
これで情報が出てきたら、反映されていない理由は単純にスペルミス、もしくは空白スペースが入ってしまって反映されないのかもです…
.envの更新方法
先ほどのコマンドでAPIキーやデータベースが反映されていない場合はを開発環境の方のターミナルでこのコマンドを打ちます。
[username:~/environment/アプリケーション名] $ scp -i ~/.ssh/キーペア .env ec2-user@IPアドレス:GitHubのリポジトリ名/
これでGitHubを通さずに直接、EC2にアップロードします。
理由としては最初に言ったようにGitHubに.envがないためです。
git pullコマンドで反映しても.envの中身が更新されないのです。
なので直接、EC2にアップロードします。大事な事なので2回言いました(笑)
おわりに
同じようなエラーで困っている方の助けになれたらと思います。(⌒∇⌒)
Discussion