Run your own relay.

1. Sign up on GitHub.

2. Sign up on Railway.

3. Go to https://github.com/Cameri/nostream

4. Click on the purple Deploy on Railway button and follow the prompts.

Reply to this note

Please Login to reply.

Discussion

Sovereignty in socials too 🔥🔥

After a full day of research on the subject, I can now easily conclude that running a relay via Nostream is the easiest and most adapted solution to scale relays and help with adoption.

Limited technical knowledge is required as i could do it myself and will most certainly help to further decentralize relays and support Nostr.

I think everyone should run a Nostream relay today. Follow these steps:

#[0]

[774834]

Can you post step by step? I deployed and now what?

You will see an address on the settings tab. That's your relay address. Connect to it.

You can inly see a set of metrics there in the settings too but that's about it for now. You can't manage it per se, it will just back up your notes and others can connect to it too.

[775169]

Address should look like [alphanumeric].up.railway.app. You can change the alpha numeric part by editing and just putting Nakadai or your name. To change the full name i added CNAME records on my domain DNS. It has been propagating for 3 days, so not yet sure here but i will know more soon.

[755169]

I see, I did this, but it keeps crashing. I chose my repo to be private. Is that why it crashes?

My repo is set to public. Try that and redeploy.

[775170]

stiill throws me an error:

Node.js v18.14.0

node:internal/fs/utils:347

throw err;

^

Error: ENOENT: no such file or directory, open '/app/resources/default-settings.yaml'

at Object.openSync (node:fs:600:3)

at Object.readFileSync (node:fs:468:35)

at SettingsStatic.loadAndParseYamlFile (/app/src/utils/settings.js:27:57)

at SettingsStatic.loadSettings (/app/src/utils/settings.js:53:39)

at App.createSettings [as settings] (/app/src/utils/settings.js:72:41)

at App.run (/app/src/app/app.js:34:31)

at Object. (/app/src/index.js:33:30)

at Module._compile (node:internal/modules/cjs/loader:1226:14)

at Module._extensions..js (node:internal/modules/cjs/loader:1280:10)

at Module.load (node:internal/modules/cjs/loader:1089:32) {

errno: -2,

syscall: 'open',

code: 'ENOENT',

path: '/app/resources/default-settings.yaml'

}

Node.js v18.14.0

Ah yes. #[5] is working on it, due to his latest update. He will let us know once he tests it himself. I am on the previous version (i can't update yet). He is aware of the issue.

[775170]

This is i believe specific to Railway concerning the Nostream update. Beyond that, it is way outside my skillset!

[775170]

Ahh ok I will wait for the update then.

It keeps crushing for some reason

Ah right. Will fix soon.

Error: ENOENT: no such file or directory, watch '/app/resources/default-settings.yaml'

at FSWatcher. (node:internal/fs/watchers:247:19)

at Object.watch (node:fs:2315:34)

at SettingsStatic.watchSettings (/app/src/utils/settings.js:103:26)

at App.run (/app/src/app/app.js:34:51)

at Object. (/app/src/index.js:33:30)

at Module._compile (node:internal/modules/cjs/loader:1226:14)

at Module._extensions..js (node:internal/modules/cjs/loader:1280:10)

at Module.load (node:internal/modules/cjs/loader:1089:32)

at Module._load (node:internal/modules/cjs/loader:930:12)

at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) {

errno: -2,

syscall: 'watch',

code: 'ENOENT',

path: '/app/resources/default-settings.yaml',

filename: '/app/resources/default-settings.yaml'

}

Node.js v18.14.0

Don’t know if this helps

It does. Yeah. Known issue

It was fine but pushed an update that broke it. I need to test it myself. Delete the project and I’ll let you know when it’s fixed.

Should v1.21.0 be alright for an upgrade? Asking since I was planning to do so. Thank you!

#[1]

Follow the steps on this note Nostrich 🫡

[775135]

#[3]

Can you write a complete guide? because I deployed now but can't access it from the domain. And how do i connect to it and relay my information to it?

Nice! Will add this tomorrow in my Nostr sources list 🤙🍀✅

#bookmark Thanks!