---
title: "Deploy ElasticMQ"
description: "ElasticMQ 1.7: Amazon SQS-compatible message queue on your private network."
category: "Queues"
url: https://railway.com/deploy/elasticmq-1
---

# Deploy ElasticMQ

ElasticMQ 1.7: Amazon SQS-compatible message queue on your private network.

**[Deploy ElasticMQ on Railway](https://railway.com/template/elasticmq-1)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/elasticmq-1/manifest.json

- **Creator:** Agaz Self-Host
- **Category:** Queues

## Template content

### elasticmq https://avatars.githubusercontent.com/u/322765

- **Image:** softwaremill/elasticmq-native:1.7.1
- **Start command:** `sh -c 'exec /sbin/tini -- /opt/elasticmq/bin/elasticmq-native-server -Dconfig.file=/opt/elasticmq.conf -Dlogback.configurationFile=/opt/logback.xml -Drest-sqs.bind-hostname=:: -Drest-sqs.bind-port=9324 -Dgenerate-node-address=false -Dnode-address.host=$ELASTICMQ_HOST -Dnode-address.port=9324 -Daws.region=$AWS_REGION -Daws.accountId=$ELASTICMQ_ACCOUNT_ID -Dqueues-storage.enabled=true -Dqueues-storage.path=/data/queues.conf -Dmessages-storage.enabled=true -Dmessages-storage.uri=jdbc:h2:/data/elasticmq'`

## Documentation

# Deploy and Host ElasticMQ on Railway

ElasticMQ is a message queue server that speaks the Amazon SQS API. Any AWS SDK or the AWS CLI can create queues, send and receive messages, and use visibility timeouts and dead-letter queues against it. It suits services that are written for SQS but should run without an AWS account.

## About Hosting ElasticMQ

This template runs the official native build `softwaremill/elasticmq-native:1.7.1` as one private service. ElasticMQ has no authentication, so the template gives it no public domain: other services in the same Railway project reach it at `http://elasticmq.railway.internal:9324` over IPv4 or IPv6. Queue definitions and messages are stored on a Railway volume, so they survive restarts and redeploys. Queue URLs returned by the API use the private hostname, which is what your SDK needs. Any access key and secret are accepted. The whole server uses very little memory and fits the Hobby plan.

## Common Use Cases

- Running code written for Amazon SQS on Railway without an AWS account
- A simple job queue between a web service and background workers
- Testing SQS integrations against a queue you fully control

## Dependencies for ElasticMQ Hosting

- `softwaremill/elasticmq-native:1.7.1` (official GraalVM native image)
- A Railway volume at `/data` for queues and messages

### Deployment Dependencies

- [ElasticMQ on GitHub](https://github.com/softwaremill/elasticmq)
- [ElasticMQ 1.7.1 release](https://github.com/softwaremill/elasticmq/releases/tag/v1.7.1)
- [Railway private networking](https://docs.railway.com/reference/private-networking)

### Implementation Details

| Service | Source | Networking | Storage |
| --- | --- | --- | --- |
| elasticmq | `softwaremill/elasticmq-native:1.7.1` | private only, port 9324 | volume at `/data` |

| Variable | Default | Purpose |
| --- | --- | --- |
| `ELASTICMQ_HOST` | `${{RAILWAY_PRIVATE_DOMAIN}}` | Host used in the queue URLs ElasticMQ returns |
| `AWS_REGION` | `us-east-1` | Region shown in queue ARNs |
| `ELASTICMQ_ACCOUNT_ID` | `000000000000` | Account ID in queue URLs and ARNs |

Notes:

- Point your SDK at `http://elasticmq.railway.internal:9324` with any access key and secret.
- The start command passes settings as `-D` options; it binds to `::` and stores queues in `/data/queues.conf` and messages in an H2 database.
- Do not add a public domain unless something in front of it checks credentials: ElasticMQ itself accepts every request.

This is a community-maintained deployment package and does not imply affiliation with or endorsement by SoftwareMill or the ElasticMQ project.

## Why Deploy ElasticMQ 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 ElasticMQ 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.


## Similar templates

- [Redpanda](https://railway.com/deploy/redpanda-1) — Redpanda 26.2: Kafka-compatible streaming, single node, with Kafbat UI.
- [smoothmq](https://railway.com/deploy/AJv-64) — A drop-in replacement for AWS SQS
- [Kafka UI](https://railway.com/deploy/kafka-ui) — Kafbat UI — Open-source web UI to monitor and manage Apache Kafka clusters

Open this page in a browser: https://railway.com/deploy/elasticmq-1
