LoginSignup
4
4

More than 5 years have passed since last update.

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

Posted at

デプロイしたもののレイアウトが崩れたなんてことがあると思います。
多分修正して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使うときはチルダでストレートに飛んで大丈夫です。
あと手順がもっと簡潔な方法があるかもしれないのであったら知りたいです、是非コメントにお願いします。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4