Skip to content

railway.app というサービスを知った

Posted on:2022年5月6日

あー今年の始めくらいから個人開発で使っている Railway、ここ数ヶ月の進化のスピード速くて最高 of 最高になっている。素晴らしい。一瞬 fly.io 乗り換えがチラついたけどこのまま行こう > https://twitter.com/Meijin_garden/status/1520386026480746496

というツイートを見かけて、railway.app というサービスを知った。

いわゆる PaaS というかんじで、ぽちぽち設定していけば

などなどをいいかんじにやってくれるというもの。

実際 tutorial 的なものを触ってみたけど、便利。 典型的なユースケースは GitHub の repository を連携するだけで 0 configurations でデプロイまでやってくれる。 たとえば、「これは Next.js のプロジェクトです」ということをわざわざ明示する必要は基本的にない。 同様に、root directory に Dockerfile があったら、それをつかってデプロイするんだな、と解釈してよしなにしてくれる。

あとなんか railway.app が公式に提供しているスターターテンプレートみたいなものもあって、それもわりと種類が豊富でおもしろい。 https://railway.app/starters

cli ツールも提供していて、 railway run npm run foo などとやると Railway 上の環境変数をもってきた状態で npm run foo を実行する、みたいなこともできる。

環境の分離もうまくできていて、Project ごとに複数の環境をもてるようになっている。 Project には複数のサービスが含まれるので、それらのサービスごとまるっと複製した別環境をつくる、みたいなことが簡単にできる。

あんまり最近の Heroku をつかっていないので、ぶっちゃけ Heroku となにがちがうんだっけ…?というところはよくわかっていないのだけど、ちょっと試しにつかってみた感じ便利だったので、なんかしら hosting してみようかなという気になっている。

このブログはいまは Cloudflare Pages で静的ファイル配信だけやっているけど、railway.app ならもうちょっと動的なものも扱えるので、なんかネタがあったらやってみてもいいかもしれない。

余談

Cloudflare Pages をさわったときにも同じことを思ったけど、最近の PaaS などの進化はすごくて、ぱっとサービスなりページなりを公開するときの体験のよさに毎度驚いてしまう。

典型的なユースケースではほぼ設定不要で git push したらデプロイしてくれるようになっている。さらにその「典型的なユースケース」の中に Dockerfile が含まれていると、もうだいたいなんでもあり、みたいな状態になって、自前でデプロイスクリプトとか書かない世界になっているんだなぁと改めておもった。

Cloud Run みたいな Docker ベースのやつでも相当楽な世界になった気がしていたけど、それでも Cloud Build + GCR + Cloud Run、をがちゃがちゃつなぐ、みたいなのは必要なわけで、Dockerfile だけ書けばいいよ、というのとは入り安さの観点だけみると一線あるよなーと思う。