Storj Storage Node Docker-Compose file

Storj Storage Node Docker-Compose file

Get Social!

Storj V3 is now in BETA and recruiting Storage Node operators. Since V3 of Storj, Docker is used exclusively to wrap up creating a new Storage Node into a simple, manageable container.

You’ll need to see the official docs for creating your identity certificates, but when it comes to creating your docker environment it couldn’t be more simple than using docker-compose. If you haven’t got docker-compose installed then check out this blog post.

Create a new folder and a docker-compose.yml with the below content.

mkdir storj
vi storj/docker-compose.yml
version: '3'
services:
  storagenode:
    image: storjlabs/storagenode:beta
    restart: unless-stopped
    ports:
        - 28967:28967
    volumes:
        - ./config/identity:/app/identity
        - ./data:/app/config
    environment:
        - WALLET=0x123456789
        - EMAIL=EMAIL
        - ADDRESS=external.url:28967
        - BANDWIDTH=10TB
        - STORAGE=1TB
        - STORJ_LOG_LEVEL=info
  watchtower:
    image: containrrr/watchtower
    volumes:
        - /var/run/docker.sock:/var/run/docker.sock
    environment:
        - WATCHTOWER_CLEANUP=true

You’ll need to fill out the environment details to match your requirements, especially the WALLET and ADDRESS. You may want to redirect the volume elements to match your environment – the /app/config path should point to the disk that you’d like to use for storage (I know, the name is confusing) and the /app/identity path should point to your Storj identity certificates.

Run docker-compose up -d to fetch the images from the docker hub and create your Storage Node instance.


4 Comments

Nick Sweeting

8-Apr-2021 at 3:32 am

Don’t forget to setup watchtower too, otherwise if you leave this unattended it will get kicked off the network for being out of date.

See here: https://github.com/storj/storj/pull/4077

    James Coyle

    9-Apr-2021 at 3:20 pm

    It’s a good point – thanks.

      James1

      16-Jan-2022 at 9:08 pm

      nice job

      “/app/config path should point to the disk that you’d like to use for storage ”

      Is this file system going to be erased or it is only going to check there is 1TB of free space on this but without erasing this file system ?

Simon

22-Feb-2022 at 5:48 pm

Thanks for the How-To!

I use custom ports and spent a bunch of time troubleshooting my config, not knowing that you need to specify the protocols explicitly (default is just TCP). If not set correctly, storj warns about failed PingMe requests.

In case anybody else wants to run their node using custom ports, check out the example config:


ports:
– 5000:28967/tcp
– 5000:28967/udp

Leave a Reply

Visit our advertisers

Quick Poll

Do you use GlusterFS in your workplace?

Visit our advertisers