さくらVPSにRails8をKamalでデプロイする
rails8をKamalでデプロイする | FJORD BOOT CAMP(フィヨルドブートキャンプ) を参考にさくらVPSにRails8をKamalでデプロイしました。
手順どおりでほぼ問題なくデプロイできるのですが、さくらVPSは管理ユーザーがubuntuに固定(Kamalはrootを想定)されているので、それに対応するための手順が必要だった。
config/deploy.yml を編集して
ssh:
user: ubuntu
を追加するのと、サーバー側で、
# root シェルで実行
echo 'ubuntu ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/ubuntu
と実行して、ubuntu ユーザーがパスワードなしで sudo を実行できるようにするのと、
sudo usermod -aG docker ubuntu
を実行して、ubuntu を docker グループに追加する必要がありました。
これによって、
# /etc/ssh/sshd_config:
PermitRootLogin prohibit-password
PubkeyAuthentication yes
と変更する必要はありませんでした。
あと、最初、IPアドレスを host 名に設定したり、テストだからと ssl なしでデプロイしようとしたところはまりまくったので、サブドメインを用意し、ssl ありでデプロイするようにしました。
IPアドレスでもアクセスできるなど、下手に知っているのがあだとなりました。令和ははじめからサブドメイン用意し、ssl は始めからオン、Rails のレールに乗るのが大切ということを思い知りました。
2025/05/15 18:00:00