renderとplanetScaleを使ってWebアプリを作る
環境
- Rails
- Planet Scale
- render.com
Railsアプリを作成時に最初にPlanetScaleの環境を整えるとよさそう
render
とりあず、Rails new appして、それをデプロイするまでもっていく
renderのダッシュボードから、New> WebService
Githubの当該リポジトリと連携

以上のような設定

そもそもRails をAPIモードで使うのでBuild Commandはbundle install;に変更する
Missing secret_key_base for 'production' environmentのエラーがでるので対処。
これはローカルにあるmaster.keyが.gitignoreに含まれており、ないためにエラーになる。
master.keyは暗号化されたファイルを復号するのに必要な鍵なので、Githubにプッシュしないのが正しい
なので、ローカルでmaster.keyの中身をコピーする
そして、renderで環境変数を設定する。keyがSECRET_KEY_BASE、Valueがコピーしたやつ

master.keyの役割についてはこれがわかりやすかった
途中から更新が途絶えていましたね。
ここに知りたいことがまとまっていた
Fly.ioでAPIを動かすことにした。
render.com ではアクセスがないと止まってしまうので、APIが使えるようになるには30秒くらい待つ必要があるため、それがないFly.ioへデプロイする
githubと連携しての自動デプロイができないので、renderのままにした
Fly.ioへのデプロイが失敗する
$ fly deploy
==> Verifying app config
--> Verified app config
==> Building image
...
------
> [internal] load remote build context:
------
Error failed to fetch an image or build from source: error building: error during connect: Post "http://...
とエラーがでた。
imageのbuildが終わらずタイムアウトしていそうなので
$ flyctl deploy --local-only
としてローカルでbuildを行い、imageをプッシュするようにした。
下記の記事を参考にした
$ flyctl wireguard websockets enable
としたら、 --local-onlyなしでも行けた