[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
でec2ログイン。
一旦htmlまで移動したらlsコマンドで自分のアプリ名確認。更にcdコマンドでアプリの中へ。
よくエディターでいじってたようなディレクトリたちが出てきます。
あとは編集したいものの1階層上くらいまで移動して($cd使う) sudo vi 〇〇で開く。
vimで開けます。ESCとかaとか押すとinsertモードになるので直したいところ直しましょう。
入力が終わったらESCでコマンドモード(?)に戻して:wqまたはsiftキー+zzで保存して終了。
ミスったときは:q!で保存しないで抜けられます。
ここまでで変更自体は出来てるんですが反映が出来てるかはちょっと別です。
viewとかは大丈夫みたいですがmigrationとかjsとかcssいじった場合はコンパイルします。手順は以下
で権限をec2ユーザに戻す。
コンパイルしなおす。コンパイルは2つやらなきゃいけないわけではなく、必要なほうだけで大丈夫。
アパッチに権限を返す。
で再起動。おしまい。
説明の為(主に前半)細かく分割してみたんですが、cd使うときはチルダでストレートに飛んで大丈夫です。
あと手順がもっと簡潔な方法があるかもしれないのであったら知りたいです、是非コメントにお願いします。
デプロイしたもののレイアウトが崩れたなんてことがあると思います。
多分修正して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アドレス>
$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
よくエディターでいじってたようなディレクトリたちが出てきます。
あとは編集したいものの1階層上くらいまで移動して($cd使う) sudo vi 〇〇で開く。
$ sudo vi application.html.erb(ここは開きたいファイル名)
入力が終わったらESCでコマンドモード(?)に戻して:wqまたはsiftキー+zzで保存して終了。
ミスったときは:q!で保存しないで抜けられます。
ここまでで変更自体は出来てるんですが反映が出来てるかはちょっと別です。
viewとかは大丈夫みたいですがmigrationとかjsとかcssいじった場合はコンパイルします。手順は以下
$cd /../../.. (var/wwwまで戻る。自分の現在地によって適宜。) $sudo chown -R ec2-user:ec2-user html
$cd (アプリの中まで戻る)
$bundle exec rake assets:precompile RAILS_ENV=production $bundle exec rake db:migrate RAILS_ENV=production
$cd .. (var/wwwに移動) $ sudo chown -R apache:apache html
$sudo service httpd restart
説明の為(主に前半)細かく分割してみたんですが、cd使うときはチルダでストレートに飛んで大丈夫です。
あと手順がもっと簡潔な方法があるかもしれないのであったら知りたいです、是非コメントにお願いします。
コメント
コメントを投稿