My storj node is offline and QUIC is misconfigured

hi
i have a problem here,
my storj node is offline from start and
i check the port and the port is open.
and i checked my logs and i find this error

so what i need to fix to be the node online?

don’t think QUIC really matters for if you are online or not…

your node isn’t connected to the internet, that can be a wide range of different things.

first check that the node host system is connected to the internet.

if you use ddns, then you should most likely check that next.

next maybe verify that your global ip’s is the correct one, if you don’t have a static ip from your ISP your router may change IP when rebooted, which is why some are forced to use DDNS.

you should also check that your node host system has the LAN IP address your router routes the port to

maybe double and triple check all the IP addresses and ports are 100% correct in all places.

if that doesn’t work
you will want to go through the entire routing setup for your node.

did you signed identitie with storj token?

i fixed this and problem was on manual dns. but now i have this problem

and i don’t know how to fix it.

Looks like the node cannot write to database “info.db”.
Permission issue maybe? Can your node write to the data folder you chose?


Side note: when posting on the forum, it’d be easier for everyone if you posted logs/outputs in text format so we can copy/paste it, search it and so on.

Here is how to do that on this forum: Use a triple backtick to open a “preformatted section”, and use them again to close the section.
Example:

```
2022-09-04T10:26:13.477Z INFO This is just a dummy log output
2022-09-04T10:31:57.827Z INFO example to show how to format
2022-09-04T10:31:58.045Z INFO text on this forum.
```

Would display:

2022-09-04T10:26:13.477Z	INFO	This is just a dummy log output
2022-09-04T10:31:57.827Z	INFO	example to show how to format
2022-09-04T10:31:58.045Z	INFO	text on this forum.

That’d be easier to read, use & leverage for everyone than screenshots ^^

how i can know if my node can write or not?

note: sorry for posting like this, i can fix it soon.

  • How do you start your docker command? With what user? From your screenshots it seems like you use your regular user “pi” which suggests you configured docker to be runnable by a regular user (that’s fine but can you confirm?).
  • On your start command, you had to configure parameter --mount type=bind,source="YOUR_STORAGE_PATH",destination=/app/config:
    If you run the following command (by replacing placeholder YOUR_STORAGE_PATH with your actual configuration), what is the result?
    ls -al YOUR_STORAGE_PATH
    
1 Like

the user and group id you defined in your docker run command, has to have permissions to the storagenode location.

you would need to do something like a chown command.

would look something like this
sudo chown -R user:group /storagenode/location/

you will have defined the user and group when running this command

docker run --rm -e SETUP="true" \
    --user $(id -u):$(id -g) \
    --mount type=bind,source="<identity-dir>",destination=/app/identity \
    --mount type=bind,source="<storage-dir>",destination=/app/config \
    --name storagenode storjlabs/storagenode:latest

as referenced in

to change the group or user you can simply change them in the docker run command, rather than doing the chown…
depends on how your system is setup and what you prefer ofc.

which looks something like this.

docker run -d --restart unless-stopped --stop-timeout 300 \
    -p 28967:28967/tcp \
    -p 28967:28967/udp \
    -p 127.0.0.1:14002:14002 \
    -e WALLET="0xXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" \
    -e EMAIL="user@example.com" \
    -e ADDRESS="domain.ddns.net:28967" \
    -e STORAGE="2TB" \
    --user $(id -u):$(id -g) \
    --mount type=bind,source="<identity-dir>",destination=/app/identity \
    --mount type=bind,source="<storage-dir>",destination=/app/config \
    --name storagenode storjlabs/storagenode:latest

it can be a good idea to save the run command as you might need it later.
and it sucks to have to write it again.

2 Likes

yes, my user is ^pi^
when i tested ls -al
drwxr-xr-x 6 root root 262144 Sep 4 11:21 .
drwxr-xr-x 6 root root 262144 Sep 4 11:21 …
-rwxr-xr-x 1 root root 32768 Sep 4 11:21 bandwidth.db
drwxr-xr-x 2 root root 262144 Sep 4 09:36 blobs
drwxr-xr-x 2 root root 262144 Sep 4 09:36 garbage
-rwxr-xr-x 1 root root 32768 Sep 4 11:21 heldamount.db
-rwxr-xr-x 1 root root 16384 Sep 4 11:21 info.db
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 notifications.db
-rwxr-xr-x 1 root root 32768 Sep 4 11:21 orders.db
-rwxr-xr-x 1 root root 36864 Sep 4 11:21 piece_expiration.db
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 pieceinfo.db
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 piece_spaced_used.db
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 pricing.db
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 reputation.db
-rwxr-xr-x 1 root root 32768 Sep 4 11:21 satellites.db
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 secret.db
-rwxr-xr-x 1 root root 32 Sep 4 09:36 storage-dir-verification
-rwxr-xr-x 1 root root 24576 Sep 4 11:21 storage_usage.db
drwxr-xr-x 2 root root 262144 Sep 4 09:36 temp
drwxr-xr-x 2 root root 262144 Sep 4 09:36 trash
-rwxr-xr-x 1 root root 20480 Sep 4 11:21 used_serial.db
pi@raspberrypi:~ $

This suggests that you’re running your Node as root (or that you did at least once in the past).

One approach, if you’re running your docker command with your user pi, is to recursively fix rights for all your storage folder, with a command like @SGC suggested:

sudo chown -R pi:pi YOUR_STORAGE_PATH

Then try starting your node.


Alternatively (and some may say it is not recommended but if your Raspberry Pi is dedicated to Storj, it’s not that serious), running your docker command with a sudo may be a short-term fix, and see if it fixes your issue. That is:

sudo docker run -d --restart unless-stopped [...]