[Rails] AWSを使ってデプロイした後のアプリ修正の仕方

[Rails] AWSを使ってデプロイした後のアプリ修正の仕方:

デプロイしたもののレイアウトが崩れたなんてことがあると思います。

多分修正してgitに挙げた後クローンしてもいけますがコマンドだけでちょちょっと修正したいとき用のメモ。

因みに環境は

・Rails 5.2.2

・ruby 2.3.8p459 (2018-10-18 revision 65136) [x86_64-linux-gnu]

デプロイ環境

・aws

・Apache

・Passenger

 $ ssh -i "/Users/ユーザ名/.ssh/〇〇〇〇.pem" ec2-user@<EIPのIPアドレス> 
でec2ログイン。

$cd /var/wwww/html 
$ls 
sample_app (自分のアプリ名出るはず)  
$cd sample_app , $ls 
app     config.ru  Gemfile.lock  package.json  README.md  tmp 
bin     db         lib           public        storage    vendor 
config  Gemfile    log           Rakefile      test 
一旦htmlまで移動したらlsコマンドで自分のアプリ名確認。更にcdコマンドでアプリの中へ。

よくエディターでいじってたようなディレクトリたちが出てきます。

あとは編集したいものの1階層上くらいまで移動して($cd使う) sudo vi 〇〇で開く。

 $ sudo vi application.html.erb(ここは開きたいファイル名) 
vimで開けます。ESCとかaとか押すとinsertモードになるので直したいところ直しましょう。

入力が終わったらESCでコマンドモード(?)に戻して:wqまたはsiftキー+zzで保存して終了。

ミスったときは:q!で保存しないで抜けられます。

ここまでで変更自体は出来てるんですが反映が出来てるかはちょっと別です。

viewとかは大丈夫みたいですがmigrationとかjsとかcssいじった場合はコンパイルします。手順は以下

$cd /../../..    (var/wwwまで戻る。自分の現在地によって適宜。) 
$sudo chown -R ec2-user:ec2-user html 
で権限をec2ユーザに戻す。

$cd (アプリの中まで戻る) 
$bundle exec rake assets:precompile RAILS_ENV=production 
$bundle exec rake db:migrate RAILS_ENV=production 
コンパイルしなおす。コンパイルは2つやらなきゃいけないわけではなく、必要なほうだけで大丈夫。

$cd ..    (var/wwwに移動) 
$ sudo chown -R apache:apache html 
アパッチに権限を返す。

$sudo service httpd restart 
で再起動。おしまい。

説明の為(主に前半)細かく分割してみたんですが、cd使うときはチルダでストレートに飛んで大丈夫です。

あと手順がもっと簡潔な方法があるかもしれないのであったら知りたいです、是非コメントにお願いします。

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)