Introducing a kind of PoC for setting up a Storj Storagenode


I would like to present my first project on GitHub and then I have a legal question afterwards.

My basic idea was to simplify and automate the installation process of a Storj Storagenode based on Docker and Linux (Debian).

Therefore, I created two methods, in the form of scripts, which make it possible to set up a Storagenode in Debian Linux in Docker either at command line level or in the browser via an input form.

I would appreciate feedback and invite you to try the variant via the WebGUI. After the release I had to notice that the selection of satellites there doesn’t seem to work yet. Especially here it would be interesting to know where the bug is.

It should be said that I am not a professional programmer and consider this more as a leisure project and “proof of concept”, on which one can build and possibly a clean solution can arise. The code base is therefore also not the best, please forgive this.

I already consider myself happy if I make it easier for a single person to get started as a node operator.

Let’s move on to the legal question:

Storj provides a MediaKit online. Does this also mean that I can reuse these logos in my projects as long as the reference to the source is available?


Hello @node_operator0815 ,

Thank you for making a project to make it easier for people to start nodes!

Your question has been forwarded to the team for an official answer because this is not an area where I can speak without their authority.

Someone will return with the official reply for you soon.

We have consulted with our legal team regarding use of our name and logo in third party apps. Please note that for legal reasons, we can’t allow use of the logo or labeling your app simply ¨Storj¨without an agreement in place with Storj Labs. Thank you for your understanding.

Of course we still welcome anyone building helpful apps for our node operator community.


Thank you for your fast reply, I will remove the media files as soon as possible from my repository.

It is clearly not allowed and I should knew that, sorry for that.


I quickly adjusted the repository, it should fit now, except it is also not allowed to use official color codes. :grimacing:


I went to github, clicked on just everything on the link you sent, and wasnt able to get anything going. As far as this being easier then the guide I don’t see it.


    Deflate archive with "unzip" in your home directory
    Make "" executeable with "chmod +x"
    Execute "" with "sudo bash"
    Follow the instructions in the scripts or on web (The configured Web-Port is 8080)
    If you have finished your web-task, you can execute "sudo bash cleanup" which is shutting down and disabling nginx and shellinabox

Without a reasonable knowledge of Linux most wont get this.
But I love the idea and am sure it is probably my incompetence’s fault that I couldn’t get anything to work.

Thanks for your Feedback

Did you go to this subpage?

There you can find the .zip and this is what you are supposed to unpack in step 1.

It is possible that you need to install the program unzip in your Debian installation first. But I chose .zip as archive method rather than .tar because unzip is easier to handle than ‘tar -xf file’ because in this case you need parameters. All in all that was a decision for simplicity.

Also you have to add the version after the .zip is named. Actually this would be unzip

You can also use the TAB key on your keyboard while you type e.g. ST and then you can hit TAB and it will autocomplete to except there is another file beginning with ST in the same directory.
You also have to check the case sensitivity, because Linux is a case sensitive operating system.

Addition: I hope you noticed that the outputs are in german, I haven’t translated them into english yet.

Ok the link worked.
I am on Ubuntu 22.04.1 LTS and was able to download and extract without issues. I moved into the directory, executed the commands you posted ( 1. Make “” executeable with “chmod +x” 2. Execute “” with “sudo bash”) and that did not work. Got the message “Betriebssystem entspricht nicht Debian, Skript wird abgebrochen!”

anton@anton-MS-7C91:/$ cd /home/anton/STORJ_WEB_v011
anton@anton-MS-7C91:~/STORJ_WEB_v011$ chmod +x
anton@anton-MS-7C91:~/STORJ_WEB_v011$ sudo bash
[sudo] password for anton: 
Benutzer ist root, Skript kann gestartet werden!
Hit:1 stable InRelease
Hit:2 jammy InRelease                                       
Hit:3 jammy InRelease                                                                               
Get:4 jammy-updates InRelease [119 kB]                                                              
Get:5 jammy-security InRelease [110 kB]                                         
Get:6 jammy-backports InRelease [107 kB]                                                
Hit:7 jammy InRelease       
Get:8 jammy-updates/main amd64 DEP-11 Metadata [102 kB]
Get:9 jammy-updates/universe amd64 DEP-11 Metadata [267 kB]
Get:10 jammy-updates/multiverse amd64 DEP-11 Metadata [940 B]         
Get:11 jammy-backports/main amd64 DEP-11 Metadata [8,000 B]
Get:12 jammy-backports/universe amd64 DEP-11 Metadata [12.5 kB]
Get:13 jammy-security/main amd64 DEP-11 Metadata [41.5 kB]
Get:14 jammy-security/universe amd64 DEP-11 Metadata [15.2 kB]
Fetched 783 kB in 1s (795 kB/s)              
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
24 packages can be upgraded. Run 'apt list --upgradable' to see them.
No LSB modules are available.
Betriebssystem entspricht nicht Debian, Skript wird abgebrochen!

Sorry for my late reply, i got no message from storj, that you have answered. The script only works with Debian Linux. Perhaps if you edit the scripts, it could be run on Ubuntu, but I wouldn’t recommend that.

I took another look at the Docker installations of Debian and Ubuntu, apparently they are 1:1 identical, I will incorporate the change so you can use it on Ubuntu as well. I always assumed since there are two separate entries in Docker Docks for Debian and Ubuntu that there must be differences, but I never implemented them in the scripts since I originally developed them just for me and a friend. I will put a new release on Github, I just don’t know if I will get to it today.

I have tested the new version with Ubuntu 22.04 and both methods (shell and web interface) seem to work. I apologize again for getting back to you so late and hope that I can still help you with this.