Open maixhashi opened 1 month ago
開発環境におけるdatabase.yml → 本番環境におけるdatabase.ymlの内容に書き換えてpush
開発環境におけるdatabase.yml
production:
<<: *default
database: <%= ENV.fetch("DB_DATABASE") %>
host: <%= ENV.fetch("DB_HOST") %>
username: <%= ENV.fetch("DB_USERNAME") %>
password: <%= ENV.fetch("DB_PASSWORD") %>
開発環境におけるdatabase.ymlの内容を削除して、本番環境におけるdatabase.ymlの内容に書き換える。
production:
<<: *default
database: <%= Rails.application.credentials.rds[:database] %>
host: <%= Rails.application.credentials.rds[:host] %>
username: <%= Rails.application.credentials.rds[:username] %>
password: <%= Rails.application.credentials.rds[:password] %>
[Elastic IP]は EC2インスタンスのElastic IP
sudo ssh -i ~/.ssh/plotforge_key.pem ec2-user@[Elastic IP]
ルートディレクトリに移動
cd /
既存内容を削除
sudo rm -rf /plotforge
⇧ pull で良い? https://qiita.com/tasp/items/10cdcfc40295f8c5d256
sudo git clone https://github.com/maixhashi/plotforge
lsと打って、ディレクトリがあるか確認する。
ls
cd /plotforge
コンテナを作成
docker-compose build
ネットワークを作成
docker network create plotforge-network
プリコンパイルを実施
docker-compose run app rails assets:precompile RAILS_ENV=production
コンテナを起動
docker-compose up
Dockerコンテナに入る
docker-compose run app bash
vimをインストール
apt-get update
apt-get install vim -y
credentialを編集
EDITOR="vim" rails credentials:edit
環境変数の設定
tmdb:
api_key: TMDBのAPIキー
rds:
host: RDSのエンドポイント
database: RDSの「データベースの名前」
username: RDSの「マスターユーザの名前」
password: RDSの「マスターパスワード」
うまくいかないときはcredential.yml.enc と master.key を削除する https://qiita.com/curry__30/items/434a51226020576cfecb
docker-compose exec app rails db:create db:migrate RAILS_ENV=production
docker-compose exec app rails db:seed RAILS_ENV=production
appコンテナに入る
docker-compose exec app bash
ログを確認
tail -n 100 log/puma.stdout.log
docker system prune -af --volumes
実現したいこと
EC2インスタンス上での
Rails.application.credentials
の設定 https://qiita.com/at-946/items/1e8acea19cc0b9f31b98変更する事項
EC2インスタンスでRails.application.credentialsにより本番環境のデータベースの環境変数を設定する方法