はじめに
下記の記事を参考に本番環境を構築中、
https://qiita.com/d0ne1s/items/2dd0ec73db1b0f473509
「bundle exec cap production puma:start」実行時にエラーが発生したため
解決方法をまとめた。
エラー内容
% bundle exec cap production puma:start
(Backtrace restricted to imported tasks)
cap aborted!
Don't know how to build task 'puma:start' (See the list of available tasks with `cap --tasks`)
(See full trace by running task with --trace)
環境
rails 6.1.4
ruby 2.7.3
nginx 1.20.1
puma 4.3.8
解決方法
Capfileに「install_plugin Capistrano::Puma::Daemon」を追加する。
require "capistrano/setup"
require "capistrano/deploy"
require 'capistrano/rails'
require "capistrano/rbenv"
require "capistrano/bundler"
require "capistrano/rails/assets"
require "capistrano/rails/migrations"
require "capistrano/scm/git"
require "capistrano/puma"
install_plugin Capistrano::SCM::Git
install_plugin Capistrano::Puma
install_plugin Capistrano::Puma::Daemon. <ー追加
Dir.glob("lib/capistrano/tasks/*.rake").each { |r| import r }
・
・
・
まとめ
pumaをデーモン化していたため、Capfileに追記が必要だった。
参考