ikigai-logo-color-horizontal.png

Brought to you by Ikigai Technologies


Overview

Blockfrost is a tool that simplifies development against the blockchain. However developers are often faced with a dilemma around cloud hosting or self-hosting.

Comparison Cloud Self-Host
Effort to Start: Low High
Infrastructure Necessary No Yes
Flexibility Low High
Costs High Low

To address this challenge, Ikigai Technologies has developed two methods for deploying self-hosted Blockfrost infrastructure so that you can have the best of both worlds.

Our docker-compose solution has minimal requirements and is designed to get your local environment up and running in just a matter of minutes. With a single command, the Blockfrost API and supporting infrastructure are ready for development. The data is stored locally on persistent volumes, so you can stop and start work without worrying about losing test data.

Download the code

We want to give back to the community! Check out our open-sourced code 🙂

Link to github

Setup

https://youtu.be/Tjy4vB1dtzM

Method 1: Docker composed


To get started, all you need to do is run docker compose up. This will create four different containers:

and, run them for you.

Follow along in the logs and make sure that everything starts up correctly, or check your docker running containers with Docker PS to see what has started.

In terms of configuration, we have the configuration directory which has all of the blockfrost configurations that we know of. By default, we mount the development file so you can either make edits to that file or edit the docker compose file and change what file is actually being loaded by Blockfrost.

Method 2: Helm


Helm is going to be better for Kubernetes deployments and is a little more difficult to work with locally. But, it works out of the box on local environments and can be easily customized to fit a production environment.

Since it is going to be a local install, you need to install dependencies which ispostgres since we’re going to need that spun up.

Next, go ahead and install my Helm chart.

Okay, so it deployed and now you can go ahead and check on the status of infrastructure by looking at the podsm the services and the deployments.

Here we have three pods:

The Cardano DB sync may fail to launch initially because it needs to wait for the postgres database to be in a healthy state.

But, as you can see in the video, after a little bit it should move into a healthy state and work fine. Now, go ahead and check our services.

By default, Blockfrost is going to be a node port service. Everything else will be cluster so we can actually access it on that port.

As I mentioned earlier, Helm can be easily customized and made ready for production. All you need to do is edit the values fileand there’s documentation on that in this repository.

Hopefully this helps you deploy the infrastructure locally and get started on developing!

Follow our Socials


https://notaku.so/iframes/clickable-image/eyJpbWFnZVVybCI6Imh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9ub3Rha3UtdXNlci1pbWFnZXMvMjE1YTI3NGMtNDUzZi00NTc0LWE0NjAtYmJkZDVhMzQxMWQ2aWNvbnM4LWxpbmtlZGluLWNpcmNsZWQtNDgucG5nIiwibGlua0hyZWYiOiJodHRwczovL3d3dy5saW5rZWRpbi5jb20vY29tcGFueS9pa2lnYWktdGVjaG5vbG9naWVzIn0=

https://notaku.so/iframes/clickable-image/eyJpbWFnZVVybCI6Imh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9ub3Rha3UtdXNlci1pbWFnZXMvY2U0ZmVkMzItNjRkZC00MTc2LWI3ZDItYzAyZmQxZTgxNTU4aWNvbnM4LWRpc2NvcmQtNDgucG5nIiwibGlua0hyZWYiOiJodHRwczovL2JpdC5seS9pa2lnYWktZGlzY29yZCJ9

https://notaku.so/iframes/clickable-image/eyJpbWFnZVVybCI6Imh0dHBzOi8vc3RvcmFnZS5nb29nbGVhcGlzLmNvbS9ub3Rha3UtdXNlci1pbWFnZXMvNzY5NTUzODQtNGI2Yy00OGJhLTlmNzMtMmZkZDdjOGFmM2NiaWNvbnM4LXR3aXR0ZXItNDgucG5nIiwibGlua0hyZWYiOiJodHRwczovL2JpdC5seS9pa2lnYWktdHdpdHRlciJ9