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