MoodengSQL

Docker

Multi-stage Rust 1.85 build, Debian bookworm-slim runtime. Ships both moodengsql and moodeng binaries.

Quick start

docker compose up -d --build
docker compose exec moodengsql moodengsql ping --config /etc/moodengsql/moodeng.toml

What's included

  • Port 5432 — PostgreSQL wire protocol
  • Named volume moodeng_data mounted at /data
  • Config at /etc/moodengsql/moodeng.toml (data_dir rewritten to /data)
  • HEALTHCHECK runs moodengsql ping every 10s
  • Entrypoint: moodengsql serve --config /etc/moodengsql/moodeng.toml

Shell into the container

docker compose exec moodengsql moodeng --host 127.0.0.1 --port 5432

Production notes

  • Mount TLS certs and set [server] tls_cert / tls_key / require_tls
  • Set [auth] password_scram before exposing port 5432
  • Use docker compose stop (SIGTERM) for graceful shutdown
  • Back up the moodeng_data volume — contains WAL and table data

See also: Production guide