エージェント・テスト・CI向けの短期存在型Postgresデータベース用ランタイム
中辛 の解説
短期存在型Postgresデータベースをミリ秒単位で作成し、テンプレートから copy-on-write で複製、使用後に自動削除するランタイムです。エージェント・CI・テスト向けに複数の分離DBを1つプロセスで管理し、各DB は 70~128 KB のメモリ使用量で、6.2ms で作成できます。Postgres wire protocol 互換で、Rails・Django・Prisma・SQLAlchemy が変更なしに動作し、36 / 36 フレームワーク検証で成功しています。インストールは npx pgxdb@latest で1コマンド完結、Docker不要、バイナリは自動ダウンロードされます。v0.1試験版で crash-safe 非対応(fsync=off)、C拡張未対応という制約があります。
こんなリポジトリです
こんなときに便利です
- AIエージェントの各実行ステップごとに専用データベースを作成・破棄するワークフロー
- CI/CDパイプラインで本番テンプレートから各ビルド用DB を自動生成・テスト実行
- プルリクエストごとにTTL付きの隔離テスト環境を自動生成・自動削除管理
主な機能
ほかとの違い
従来のPostgresQLは数年の長期運用を想定し1DB1プロセスですが、PGXは1プロセスで数千のDB を数ミリ秒で作成・削除するライフサイクルに最適化しており、エージェント・テスト・CI向けの高密度・低コスト運用が実現できます。
このリポジトリの作り方
はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。
準備するもの
- npm(npx コマンド使用時)
- Rust toolchain 1.96.0 以上(ソースビルド時)
- RE2 正規表現ライブラリ(ソースビルド時)
- PostgreSQL 18 クライアントツール initdb・psql(ソースビルド時)
すぐに始める
npx を使用(推奨)
- npx コマンドでインストール・起動・データベース作成
npx pgxdb@latest
代替: シェルインストーラー
- インストーラー実行
curl -fsSL https://pgx.dev/install | sh
- ランタイム起動
pgx run
代替: ソースビルド
- 依存関係をインストール(Debian/Ubuntu の場合)
sudo apt-get install -y build-essential pkg-config libre2-dev postgresql-18 postgresql-client-18
export PATH="/usr/lib/postgresql/18/bin:$PATH"
- ビルド
cargo build --release --locked --bin postgres
- データディレクトリを初期化
initdb -D /tmp/pgx-data --no-locale --encoding UTF8 -U postgres
cat configs/pgx-ephemeral.conf >> /tmp/pgx-data/postgresql.conf
- 環境変数を設定・ランタイム起動
export PGRUST_PGSHAREDIR=/usr/share/postgresql/18
export PGRUST_TZDIR=/usr/share/zoneinfo
ulimit -s 65520
RUST_MIN_STACK=33554432 target/release/postgres \
-D /tmp/pgx-data -k /tmp -p 5432 \
-c listen_addresses= -c io_method=sync -c max_stack_depth=60000 \
-c pgrust.ephemeral_db_prefix=tdb_ \
-c pgrust.ephemeral_db_mint_roles=postgres
ギット飯トライで味見
入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。
ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。
npx gitbap-try pgrundev/pgx
Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →
スター推移 · 7日
確認日時
使いやすさ · まねしやすいか
- ゆるいライセンス
- テストあり
- サンプル集
- 最近の更新
- AGENTS.md
- llms.txt
- テンプレート
最近の更新あり · 2026 年に作成
「バックエンド・DB」 こういうリポジトリを毎週受け取りませんか?
毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。
自分のリポジトリですか? README にギット飯バッジを貼る
[](https://www.gitbap.com/r/pgrundev/pgx)Claude からそのまま使う — ギット飯のつなぎ方
ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。
Claude の設定 → コネクタにこのアドレスを貼り付け。
https://www.gitbap.com/api/mcpプラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。
/plugin marketplace add jakeparkcolde/gitbap-cowork/plugin install gitbap-cowork@gitbapAI が README をもとに要約しました · 原文を見る