Neonで無料のPostgresを使う

こんにちは、ナナオです。 前回、KoyebでDiscord botを構築してみました。 今回はこれに無料で使えると話題のNeonを組み合わせてみようと思います。 Neonとは Neonはサーバーレスで動くPostgresのサービスです。 Neon Serverless Postgres — Ship faster DBのブランチ戦略やオートスケーリングに長けており、なにより無料で使えるプランがあるのが個人開発者には魅力的な点です。 アカウント登録 ~ プロジェクト作成 まずはNeonにサインアップします。 サインアップしたらプロジェクトの作成画面に遷移します。 プロジェクト名を入力し、リージョンは日本がないので、とりあえずデフォルトのN. Virginiaにしておきます。 プロジェクトが作成されました。 NeonのDBに接続してみます。 Webコンソール上からアクセスしてみましょう。 左側のタブからTablesを選択します。 neondbというDBがあるのと、publicスキーマがあるだけで、テーブルは何もありません。 マイグレーション管理(alembic)の導入 discord botの実装にはpythonを使用しているので、マイグレーションにもpythonを使用します。 まずはプロジェクトにSQLAlchemyとalembicを導入します。 uv add SQLAlchemy alembic psycopg2 alembicでマイグレーション用のディレクトリを作成します。 uv run alembic init migrations 作成されたalembic.iniのデータベースURLの設定を、環境変数を参照するように書き換えます。 # database URL. This is consumed by the user-maintained env.py script only. # other means of configuring database URLs may be customized within the env.py # file. sqlalchemy.url = %(DATABASE_URL)s .envにはDATABASE_URL環境変数を設定します。 ...

2026年1月27日 · にあえん