This topic explains the configuration and internals of aidboxdb image


AidboxDB image is a custom build of open source PostgreSQL database. Aidbox uses it as data storage. The image can be pulled from HealthSamurai dockerhub.

docker run \
       -v "$(pwd)"/pgdata:/data/pg \
       -e POSTGRES_USER='postgres' \
       -e POSTGRES_PASSWORD='pass' \
       -e POSTGRES_DB='aidbox' \
       -e PGDATA="/data/pg" \

The AidboxDB image use cases are:

  • To initialize and run a master database for Aidbox to work with

  • To initialize and run a streaming replica

  • Optimized FHIR search queries

  • Backup and maintenance extensions


AidboxDB image is tagged by PostgreSQL version from which it is built. For example, if you want to use 14.5 PostgreSQL version you should pull healthsamurai/aidboxdb:14.5 image.

Supported PostgreSQL versions: 16.1, 15.3, 14.9, 13.12.

See available versions on Docker Hub.


List of additional availiable extensions:

  • pgagent β€” A PostgreSQL job scheduler

  • pg_repack β€” Reorganize tables in PostgreSQL databases with minimal locks

  • wal2json β€” Is an output plugin for logical decoding

  • wal-g β€” Archival and Restoration for databases in the Cloud

  • PostGIS β€” Support storing, indexing and querying geographic data

Extensions unavailable since AidboxDB version 16:

  • jsonknife β€” Jsonb extraction tool for optimizing FHIR search

  • jsquery β€” JSON query language with GIN indexing support


The image is configured by supplying environment variables and command line arguments on startup. Keep in mind that you should not change the environment variables once you have initialized the database. The image expects them to be immutable.

pageAidboxDB environment variables


An open-source tool wal-g is used by AidboxDB for continuous archival, backups, and restoration.


Last updated