Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a Ceramic Mainnet Node #918

Closed
dysbulic opened this issue Nov 12, 2021 · 8 comments
Closed

Create a Ceramic Mainnet Node #918

dysbulic opened this issue Nov 12, 2021 · 8 comments
Assignees
Labels
backend Backend related issues feature request Feature Requests
Projects

Comments

@dysbulic
Copy link
Member

What would you like to be added?

In order to participate in the Ceramic network, we need to establish a mainnet node (along with an associated IPFS node) at a static IP address, and submit a pull request to Ceramic’s peerlist.

Ceramic relies on DAG-JOSE in IPFS which currently only has a JavaScript implementation.

The IPFS daemon can be run as a subprocess of the Ceramic daemon, but this is less reliable. The ideal setup will be a standalone IPFS daemon with DAG-JOSE which is only accepting connections from the Ceramic daemon. The Ceramic daemon accepts connections from anywhere as users will connect to it directly when updating their profile.

Images are to be stored in web3.storage with only a reference stored in Ceramic, so it isn't necessary for users to connect to the IPFS daemon for those uploads.

Ceramic has published a set of Terraform scripts for deploying to Amazon Web Services. Ideally, it would be nice if we were deploying to Google’s infrastructure since that is where we're currently creating test instances for pull requests, and we already have our toes in three different services: Render, Vercel, & Google.

It may be necessary, however, to use AWS services if we deploy an instance of IdentityLink to verify Discord, GitHub, & Discourse accounts.

Why is this needed?

Creating a mainnet node is part of joining the Ceramic network and required for access to the system.

@dysbulic dysbulic added backend Backend related issues feature request Feature Requests labels Nov 12, 2021
@dysbulic dysbulic added this to Backburner in MyMeta via automation Nov 12, 2021
@dysbulic dysbulic moved this from Backburner to To do in MyMeta Nov 12, 2021
@polimyl
Copy link
Collaborator

polimyl commented Nov 12, 2021

i have done some terraform stuff recently, so i could try to translate the aws terraform scripts to google. what's the priority of this?

@dysbulic
Copy link
Member Author

what's the priority of this?

It will need to be done before we can launch Ceramic-backed profiles.

We can point the development instances to the testnet, so it wouldn't be until the changes are ready to be merged into master that we'd have to have it.

I'm guessing two weeks from now assuming no one but me picks up any of the Ceramic migration tickets.

@polimyl
Copy link
Collaborator

polimyl commented Nov 12, 2021

after having a look at the terraform module and the ceramic docs i think i'll go with just deploying the docker images since the terraform module isn't doing much more. do we need to run ipfs separately or can we use ceramic's in-process ipfs?

@polimyl polimyl self-assigned this Nov 13, 2021
@dysbulic
Copy link
Member Author

do we need to run ipfs separately or can we use ceramic's in-process ipfs?

I run a Ceramic daemon locally, and my instance falls over with a "cb is not a function" error every couple days. If we had an out-of-process IPFS node it would be better for data availability.

I'd really like to be running the Go version of the daemon. Supposedly DAG-JOSE is implemented in Go, but they're waiting on IPFS to merge changes to make it possible to deploy it.

@Udit-takkar
Copy link
Member

is the data stored on the ceramic node persistent ?

@dysbulic
Copy link
Member Author

is the data stored on the ceramic node persistent ?

Yeah. The node's data is saved to an IPFS node associated with the Ceramic instance. It is responsible for persisting the data.

@polimyl
Copy link
Collaborator

polimyl commented Dec 5, 2021

@polimyl
Copy link
Collaborator

polimyl commented Dec 14, 2021

mainnet peerlist pr has been merged
our ceramic node is now reachable on ceramic.metagame.wtf:7007

@polimyl polimyl closed this as completed Dec 14, 2021
MyMeta automation moved this from To do to Done Dec 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend Backend related issues feature request Feature Requests
Projects
Status: Done
MyMeta
  
Done
Development

No branches or pull requests

3 participants