
Deploy QuestDB
QuestDB 10 time-series database with auth, ILP ingest and Postgres wire.
questdb
Just deployed
/var/lib/questdb
Deploy and Host QuestDB on Railway
QuestDB is a high-performance open-source time-series database with SQL. It ingests millions of rows per second through the InfluxDB Line Protocol, queries with SQL extensions for time series such as SAMPLE BY and ASOF JOIN, and speaks the PostgreSQL wire protocol, so existing drivers and tools like Grafana work.
About Hosting QuestDB
This template deploys QuestDB 10.0.1 with its data on a Railway volume. The web console and REST API are on the public domain behind HTTP basic auth, and the PostgreSQL wire protocol is exposed through a Railway TCP proxy with its own generated password. Services on Railway can use port 8812 over the private network. The health endpoint on port 9003 is unauthenticated for Railway's health check. Telemetry is off. QuestDB uses memory-mapped files, so give it RAM to match your working set; the Hobby plan fits small workloads. Back up the volume regularly.
Common Use Cases
- Market data, IoT sensor readings and application metrics at high ingest rates
- Time-series SQL for dashboards in Grafana over the Postgres protocol
- Replacing InfluxDB with a SQL database that accepts the same line protocol
Dependencies for QuestDB Hosting
questdb/questdb:10.0.1(official image)- A Railway volume at
/var/lib/questdb - A Railway TCP proxy for the Postgres wire protocol
Deployment Dependencies
Implementation Details
| Service | Image | Networking | Storage |
|---|---|---|---|
| questdb | questdb/questdb:10.0.1 | public console/API on 9000; TCP proxy to 8812; private | volume at /var/lib/questdb |
# ILP over HTTP
curl -u "admin:$QDB_HTTP_PASSWORD" "$QUESTDB_URL/write" --data-binary 'trades,sym=BTC price=65000.5'
# SQL over HTTP
curl -u "admin:$QDB_HTTP_PASSWORD" -G "$QUESTDB_URL/exec" --data-urlencode "query=select * from trades"
Postgres wire: ${{questdb.QUESTDB_PG_PUBLIC}} (external) or ${{questdb.QUESTDB_PG_PRIVATE}} (Railway).
| Variable | Default | Purpose |
|---|---|---|
QDB_HTTP_USER / QDB_HTTP_PASSWORD | admin / generated | Console and REST API login |
QDB_PG_USER / QDB_PG_PASSWORD | admin / generated | Postgres wire login |
QDB_HTTP_HEALTH_CHECK_AUTHENTICATION_REQUIRED | false | Open health endpoint for Railway |
Notes:
- QuestDB listens on IPv4 only; Railway's private network also resolves IPv4 addresses, which works for other services in the project.
- Any
server.confkey can be set asQDB_(dots become underscores).
This is a community-maintained deployment package and does not imply affiliation with or endorsement by the QuestDB project or its maintainers.
Why Deploy QuestDB on Railway?
Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.
By deploying QuestDB on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.
Template Content
questdb
questdb/questdb:10.0.1