Gaia Dockerfile

I have a GitHub repo with a Dockerfile and some build/run instructions to get up on gaia-7003. I’ll try to keep the README updated as we iterate on the testnets. Future plans include:

  • Some scripts to automate the process
  • a build pipeline via Travis CI to automatically build a new Docker image and push to Docker Hub.

Feedback welcome, either here or on GitHub.

1 Like

Awesome work, @pbostrom! Have you ran a full node with this on gaia-7003 yet? I’m really curious how the mounted volume performs. Specifically the data directory (~/.gaiad/data). In my experience, reading and writing can be really slow across mounted Docker volumes, especially on large ones. I would love to know if thats the case here or if it runs without issue.

I think Docker is a really interesting idea for use with Sentry Nodes. You could very easily spin them up and down, but it’s the data directory that because hard to deal with. Curious what comes about!

Good point @gkrizek. I’m running a non-validator node at d52c627ba9780e3bd87ef4e56b315104a2b8a455@34.200.213.151:26656
It seems to be doing ok for now, but this should probably be addressed if there are performance implications. Do you think a local Docker volume would work better? I think we need to have some sort of persistence with the .gaiad/data dir to handle restarts without syncing. I’d also like to support syncing from some external source like S3 when launching the container as well.

I think they would work well for Sentry Nodes, but also maybe for validators on private, firewalled networks that are blocked from the public internet, and building and serving the Docker image from some bastion host.

I recently updated the Dockerfile at the root of the SDK repo. Does that one not work for your needs?

Oops, I did not know about that. I tried asking around on the Riot chat before I started but didn’t see that. I suppose there is no need to maintain separate Dockerfiles. I can deprecate mine.

@jack is there a CI process to build the Dockerfile and publish the image to a public Docker registry?

I’m working with your SRE team to enable this. I’ll be sure to update here when we have that.