rake kamal:ssh, kamal:console などを作っておくと便利
Kamal で、コンテナ作業をしたいとき kamal app exec -i --reuse "bin/rails console"
などと入力するのは大変です。
以下のような rake タスクを作っておくと、rails kamal:console
などで実現できて便利かと思います。
lib/tasks/kamal.rake
namespace :kamal do task :ssh do sh 'kamal app exec -i --reuse bash' end task :console do sh 'kamal app exec -i --reuse "bin/rails console"' end namespace :maintenance do # using turnout gem task :start do sh 'kamal app exec --reuse --roles=web "bin/rails maintenance:start"' end task :end do sh 'kamal app exec --reuse --roles=web "bin/rails maintenance:end"' end end end
Fly.io からアイデアを拝借しています。ありがとうございます。