🍣
fly.io の postgres を ja_JP.utf8 で使いたい
いずれかを folk して使ってね
- postgres-standalone
- postgres-ha (Clusters)
まとめると、
$ flyctl launch --no-deploy
# postgres-ha の場合、 REPL_PASSWORD の定義も必要になる
$ flyctl secrets set SU_PASSWORD=<PASSWORD> OPERATOR_PASSWORD=<PASSWORD>
$ fly volumes create pg_data --size 1 # size in GB
$ fly deploy
$ fly status
flyctl pg create はイメージの設定変更ができなさそう
flyctl pg create
の実装を読み解いていくと、 flyio/postgres
イメージを元に app を生成していることが分かるが、オプションでパスワードは取れるけど TZ のような環境変数の設定や localedef するような場所もなさそう。
注意
冒頭のリポジトリに存在する Dockerfile に VERSION を宣言しても認識されず、
Image Details のバージョンが空欄となる(flyctl pg create との違い)
バージョンが空欄の場合、 flyctl pg connect
等の処理でバージョンチェックに失敗し、
Command is not compatible with this image.
と処理が中断されてしまう。
(flyctl ssh console
や flyctl proxy ...
で動作はしていそう)
また、投稿時点でデフォルトのままでも postgres-ha が動いていない気がしているので、
動作検証が終わってうまく動かせることが出来たら投稿を更新したい
postgres-ha について、 flyctl ssh console
して接続するのではなくて、
README にある通り proxy 経由で接続したらインスタンスが動いていること・照会順序の変更が確認できました。
(改めて README 読むと、 flyctl pg connect
できないことも触れられてますね、理由まで書いてないけど)
Discussion