cardano-foundation/cardano-rosetta

An implementation of Rosetta for Cardano

TypeScript

97

672 commits

updated Mar 2, 2026

See the code

README

[!WARNING]

This Repository is no longer maintained and not supported. Please refer to the new Rosetta-Java Repository here

Cardano Rosetta

CI Nightly

A multi-platform implementation of Rosetta for Cardano, targeting the version defined in the OpenApi schema. Skip to run if wishing to use a pre-built image from the Docker Hub repository.

Build

Build from anywhere, optionally specifying a network name other than mainnet as a build argument, and accessing cached build layers to reduce the initialization time. You can also build with local source by replacing the GitHub link with .

Supported Architectures

  • linux/amd64
  • linux/arm64
mainnet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0 \
  .
preprod
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg NETWORK=preprod \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-preprod \
  .
preview
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg NETWORK=preview \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-preview \
  .
Sanchonet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg NETWORK=sanchonet \
  --build-arg CARDANO_DB_SYNC_VERSION=13.6.0.1 \
  --build-arg DB_SYNC_TAG=sanch-5-1-0
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-sanchonet \
  .

Run

Run the locally or pre-built images and mount a single volume into the standard storage location, map the server port to the host, and allocate a suitably-sized /dev/shm. See the complete Docker run reference for full control.

mainnet
docker run \
  --name cardano-rosetta \
  -p 8080:8080 \
  -v cardano-rosetta:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0
preprod
docker run \
  --name cardano-rosetta-preprod \
  -p 8081:8080 \
  -v cardano-rosetta-preprod:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-preprod
preview
docker run \
  --name cardano-rosetta-preview \
  -p 8081:8080 \
  -v cardano-rosetta-preview:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-preview
Sanchonet
docker run \
  --name cardano-rosetta-preview \
  -p 8081:8080 \
  -v cardano-rosetta-preview:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-sanchonet
:information_source: _A trusted DB snapshot can be used to speed up the initial sync, however the internal instance of `cardano-node` must be synced past the snapshot point for it to be applied. This can be achieved by observing logs emitted from `cardano-node` indicating it's close to the network tip, before then following the instructions in the [Upgrading section](#upgrading)._

Configuration

Set ENVs for optional runtime configuration

-e MODE=offline

MODE

See Rosetta docs for information on modes

  • online - default
  • offline

DEFAULT_RELATIVE_TTL

Specify the TTL without needing to access an online method. Default: 1000

LOGGER_MIN_SEVERITY

  • trace
  • debug
  • info - default
  • warn
  • error
  • fatal

PAGE_SIZE

Default: 25

Upgrading

As per the release notes, you may be required to refresh the state managed by cardano-db-sync. This can be achieved without requiring a network re-sync using one of the two following approached:

1. Re-sync From Genesis

A trustless approach to rebuild the DB, by syncing from genesis at the cost of an extended sync duration:

docker stop cardano-rosetta && \
docker rm cardano-rosetta && \
docker run --rm -v cardano-rosetta:/data ubuntu rm -rf /data/postgresql /data/db-sync

... then start a container as per usual. Sync progress will be logged by the new container.

2. Apply a Trusted cardano-db-sync Snapshot

Run the build command with the addition of an argument providing the most recent weekly snapshot link (https://update-cardano-mainnet.iohk.io/cardano-db-sync/index.html) and set is as 'SNAPSHOT_URL' below. For example:

Build
mainnet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg SNAPSHOT_URL=https://update-cardano-mainnet.iohk.io/cardano-db-sync/13.6/db-sync-snapshot-schema-13.6-block-11090788-x86_64.tgz \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-apply-snapshot \
  https://github.com/cardanofoundation/cardano-rosetta.git#2.5.0

Documentation

LinkAudience
Construction API DocumentationUsers of the Cardano Rosetta Construction API
Data API DocumentationUsers of the Cardano Rosetta Data API
Cardano Rosetta DocsCardano Rosetta specific documentation
DeveloperCore or external developers of cardano-rosetta-server
MaintainerSolution maintainer
QAQuality Assurance Engineers

blockchain
cardano
explorer

Contributors

rhyslbw

268 commits

AlanVerbner

145 commits

t-dallas

53 commits

jvieiro

47 commits

cardano-foundation/cardano-rosetta

An implementation of Rosetta for Cardano

TypeScript

97

672 commits

updated Mar 2, 2026

See the code

README

[!WARNING]

This Repository is no longer maintained and not supported. Please refer to the new Rosetta-Java Repository here

Cardano Rosetta

CI Nightly

A multi-platform implementation of Rosetta for Cardano, targeting the version defined in the OpenApi schema. Skip to run if wishing to use a pre-built image from the Docker Hub repository.

Build

Build from anywhere, optionally specifying a network name other than mainnet as a build argument, and accessing cached build layers to reduce the initialization time. You can also build with local source by replacing the GitHub link with .

Supported Architectures

  • linux/amd64
  • linux/arm64
mainnet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0 \
  .
preprod
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg NETWORK=preprod \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-preprod \
  .
preview
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg NETWORK=preview \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-preview \
  .
Sanchonet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg NETWORK=sanchonet \
  --build-arg CARDANO_DB_SYNC_VERSION=13.6.0.1 \
  --build-arg DB_SYNC_TAG=sanch-5-1-0
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-sanchonet \
  .

Run

Run the locally or pre-built images and mount a single volume into the standard storage location, map the server port to the host, and allocate a suitably-sized /dev/shm. See the complete Docker run reference for full control.

mainnet
docker run \
  --name cardano-rosetta \
  -p 8080:8080 \
  -v cardano-rosetta:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0
preprod
docker run \
  --name cardano-rosetta-preprod \
  -p 8081:8080 \
  -v cardano-rosetta-preprod:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-preprod
preview
docker run \
  --name cardano-rosetta-preview \
  -p 8081:8080 \
  -v cardano-rosetta-preview:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-preview
Sanchonet
docker run \
  --name cardano-rosetta-preview \
  -p 8081:8080 \
  -v cardano-rosetta-preview:/data \
  --shm-size=2g \
  cardanofoundation/cardano-rosetta:2.5.0-sanchonet
:information_source: _A trusted DB snapshot can be used to speed up the initial sync, however the internal instance of `cardano-node` must be synced past the snapshot point for it to be applied. This can be achieved by observing logs emitted from `cardano-node` indicating it's close to the network tip, before then following the instructions in the [Upgrading section](#upgrading)._

Configuration

Set ENVs for optional runtime configuration

-e MODE=offline

MODE

See Rosetta docs for information on modes

  • online - default
  • offline

DEFAULT_RELATIVE_TTL

Specify the TTL without needing to access an online method. Default: 1000

LOGGER_MIN_SEVERITY

  • trace
  • debug
  • info - default
  • warn
  • error
  • fatal

PAGE_SIZE

Default: 25

Upgrading

As per the release notes, you may be required to refresh the state managed by cardano-db-sync. This can be achieved without requiring a network re-sync using one of the two following approached:

1. Re-sync From Genesis

A trustless approach to rebuild the DB, by syncing from genesis at the cost of an extended sync duration:

docker stop cardano-rosetta && \
docker rm cardano-rosetta && \
docker run --rm -v cardano-rosetta:/data ubuntu rm -rf /data/postgresql /data/db-sync

... then start a container as per usual. Sync progress will be logged by the new container.

2. Apply a Trusted cardano-db-sync Snapshot

Run the build command with the addition of an argument providing the most recent weekly snapshot link (https://update-cardano-mainnet.iohk.io/cardano-db-sync/index.html) and set is as 'SNAPSHOT_URL' below. For example:

Build
mainnet
DOCKER_BUILDKIT=1 \
docker build \
  --build-arg BUILDKIT_INLINE_CACHE=1 \
  --build-arg SNAPSHOT_URL=https://update-cardano-mainnet.iohk.io/cardano-db-sync/13.6/db-sync-snapshot-schema-13.6-block-11090788-x86_64.tgz \
  --cache-from=cardanofoundation/cardano-rosetta:master \
  -t cardanofoundation/cardano-rosetta:2.5.0-apply-snapshot \
  https://github.com/cardanofoundation/cardano-rosetta.git#2.5.0

Documentation

LinkAudience
Construction API DocumentationUsers of the Cardano Rosetta Construction API
Data API DocumentationUsers of the Cardano Rosetta Data API
Cardano Rosetta DocsCardano Rosetta specific documentation
DeveloperCore or external developers of cardano-rosetta-server
MaintainerSolution maintainer
QAQuality Assurance Engineers

blockchain
cardano
explorer

Contributors

rhyslbw

268 commits

AlanVerbner

145 commits

t-dallas

53 commits

jvieiro

47 commits

Languages

TypeScript

95.3%

Shell

1.9%

Nix

1.7%