Error message with docker

Hello,
I search a little help.

I want install storagenode on my raspberry connect to external disk.
I have install docker, no ip … without problem.
I have create my keys identity associed with my email address.
But when i start my docker i have error message :
Invalid configuration. {“error”: “operator wallet address isn’t valid”}
Error: operator wallet address isn’t valid.

My key and email are good.

Anyone have a idea ? Maybe i need to recreate my keys ?

Thank for your help

have you added the wallet to the docker startup command?

Please send your run command

You may have entered a typo in your docker run command.
Please share it here so we can quickly see what’s wrong with it.

2 Likes

Welcome @Mysteres :slight_smile:
What the others said, please share your docker run command so we can help you spot what’s wrong.

This said, you may want to anonymise personal info (especially your email address and domain name, and we usually suggest anonymizing the wallet address too but because that’s the issue maybe you could only anonymise the middle part of it) before posting the command here.

2 Likes

See my command docker

docker run -d --restart always --stop-timeout 300 \
    -p 28967:28967 \
    -p 127.0.0.1:14002:14002 \
    -e WALLET="XXXXXXXXXXXXXXXXXXXXXXXXXXXX" \  (My Wallet)
    -e EMAIL="mXXXXXXX@gmail.com" \ (My email address)
    -e ADDRESS="11.11.11.11:28967" \  Or  "XXXX.ddns.net:28967"
(My IP or domain with noip. The result is same.)
    -e STORAGE="700GB" \
    --mount type=bind,source=/home/pi/.local/share/storj/identity/storagenode,destination=/app/identity \
    --mount type=bind,source=/media/pi/1To/Application_Docker/storj,destination=/app/config \
    --name storagenode storjlabs/storagenode:latest

For my ip, email, and wallet, i copy and paste.

Please, check, have you specified something in the config.yaml? If so, please make the wallet string empty there (just "") and save the config, then restart the node.
Also, make sure that you do not have spaces in the WALLET option.

exactly my config.yaml was empty:

  • contact.external-address: “”
  • operator.email: “”
  • operator.wallet: “”
  • operator.wallet-features: “”
  • server.address: :28967

I have enter:

  • contact.external-address: “”
  • identity.cert-path: identity/identity.cert
  • identity.key-path: identity/identity.key
  • log.level: info
  • operator.email: “XXXXX@gmail.com
  • operator.wallet: “XXXXXXXXXXXXXXXXXXXXXXXXXXXX”
  • operator.wallet-features: “”
  • server.address: XX.XX.XX.XXX:28967
  • server.private-address: 127.0.0.1:7778
  • storage.allocated-bandwidth: 0 B
  • storage.allocated-disk-space: 1.00 TB

Others informations are in comment. I have always the same problem.

2021-04-07T07:55:02.691Z INFO Configuration loaded {“Location”: “/app/config/config.yaml”}
2021-04-07T07:55:02.697Z INFO Operator email {“Address”: “XXXXXXXX@gmail.com”}
2021-04-07T07:55:02.697Z ERROR Invalid configuration. {“error”: “operator wallet address isn’t valid”}
Error: operator wallet address isn’t valid

Please, revert values in the config file which you edited. All these options for the docker version are specified in the docker run command, they have a precedence above parameters in the config.yaml, but if you specified them wrong - the node will fail to start before the possibility to take parameters from the command line.
This is especially true if you used some word processor to edit this file - it could corrupt the config.
To edit a config file you must use only plain text editor.
Because right now I see at least curly quotes instead of straight ones.
Please, put the code or content of configs in your message between two new lines with three backticks (such ones: ```), this will show the pretty formatting.

Maybe would be simpler to rename this config and re-generate config with the setup step (only on that time!)

What crypto-asset address are you using? Is it indeed an ETH public address?

I have delete and recreate yaml files.
restart with docker command. It’s always the same.
When i had edit file, i was used “texte editor” software in raspberry.

I had try on my server and i have same problem like my raspberry.

Yes, it’s my public address. I have none problem for access at my public address with domotic, donwload softwares…

Edit: i have try to recreate a new certificat with other email address. I have always the same probleme.

Is wallet in this format?
“0x303EDCD8DbE1607fe512D45CC15d3E41fa4db44B”

“0x123…”

Could you show again your docker run command with another example of a real ETH address?
Do not use your own but use a real one (that you will leave after). This is just to make sure you are setting it properly without compromising your privacy.

Yes, it’s “0xA…”

another example
docker run -d --restart unless-stopped --stop-timeout 300
-p 28967:28967
-p 127.0.0.1:14002:14002
-e WALLET=“0x15AAAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBCCCCCCCDDDDDDDDDDDDDDDD”
-e EMAIL="mitototo@yahoo.fr"
-e ADDRESS=“81.81.81.81:28967”
-e STORAGE=“700GB”
–mount type=bind,source="/home/pi/.local/share/storj/identity-yahoo/storagenode",destination=/app/identity
–mount type=bind,source="/media/pi/1To/Application_Docker/storj",destination=/app/config
–name storagenode storjlabs/storagenode:latest

Try change ” to " maybe help

1 Like

And hyphen to double dash --
Make sure that you do not have spaces in quotes or after the \
Try to remove quotes at all.

I have all delete and restart to begining and now it’s starting but i have other error.

INFO Configuration loaded {“Location”: “/app/config/config.yaml”}
INFO Operator email {“Address”: “mXX@gmail.com”}
INFO Operator wallet {“Address”: “0xXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”}
INFO Telemetry enabled {“instance ID”: “12JzAjjGdgVQE5sNDcE3a1i8QVDHpxKiuArY2akYC4UjbSUeqoS”}
INFO db.migration Database Version {“version”: 51}
INFO preflight:localtime start checking local system clock with trusted satellites’ system clock.
INFO preflight:localtime local system clock is in sync with trusted satellites’ system clock.
INFO bandwidth Performing bandwidth usage rollups
INFO Node 12JzAjjGdgVQE5sNDcE3a1i8QVDHpxKiuArY2akYC4UjbSUeqoS started
INFO Public server started on [::]:28967
INFO Private server started on 127.0.0.1:7778
INFO failed to sufficiently increase receive buffer size (was: 176 kiB, wanted: 2048 kiB, got: 352 kiB). See https: // github.com/lucas-clemente/quic-go/wiki/UDP-Receive-Buffer-Size for details.
INFO trust Scheduling next refresh {“after”: “3h54m45.069403006s”}
ERROR services unexpected shutdown of a runner {“name”: “piecestore:monitor”, “error”: “piecestore monitor: error verifying location and/or readability of storage directory: node ID in file (1G4bfNi839FKw1gqghezSnSWL1JFqipMqS5wUG5zBp3oAxwuwr) does not match running node’s ID (12JzAjjGdgVQE5sNDcE3a1i8QVDHpxKiuArY2akYC4UjbSUeqoS)”, “errorVerbose”: “piecestore monitor: error verifying location and/or readability of storage directory: node ID in file (1G4bfNi839FKw1gqghezSnSWL1JFqipMqS5wUG5zBp3oAxwuwr) does not match running node’s ID (12JzAjjGdgVQE5sNDcE3a1i8QVDHpxKiuArY2akYC4UjbSUeqoS)\n\tstorj.io/storj/storagenode/monitor.(*Service).Run.func1.1:131\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/storj/storagenode/monitor.(*Service).Run.func1:128\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
ERROR contact:service ping satellite failed {“Satellite ID”: “12L9ZFwhzVpuEKMUNUqkaTLGzwY9G24tbiigLiXpmZWKwmcNDDs”, “attempts”: 1, “error”: “ping satellite error: rpc: dial tcp: operation was canceled”, “errorVerbose”: “ping satellite error: rpc: dial tcp: operation was canceled\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
INFO contact:service context cancelled {“Satellite ID”: “12L9ZFwhzVpuEKMUNUqkaTLGzwY9G24tbiigLiXpmZWKwmcNDDs”}
ERROR contact:service ping satellite failed {“Satellite ID”: “121RTSDpyNZVcEU84Ticf2L1ntiuUimbWgfATz21tuvgk3vzoA6”, “attempts”: 1, “error”: “ping satellite error: rpc: dial tcp: operation was canceled”, “errorVerbose”: “ping satellite error: rpc: dial tcp: operation was canceled\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
INFO contact:service context cancelled {“Satellite ID”: “121RTSDpyNZVcEU84Ticf2L1ntiuUimbWgfATz21tuvgk3vzoA6”}
ERROR piecestore:cache error during init space usage db: {“error”: “piece space used error: context canceled”, “errorVerbose”: “piece space used error: context canceled\n\tstorj.io/storj/storagenode/storagenodedb.(*pieceSpaceUsedDB).Init:73\n\tstorj.io/storj/storagenode/pieces.(*CacheService).Run:75\n\tstorj.io/storj/private/lifecycle.(*Group).Run.func2.1:81\n\truntime/pprof.Do:40\n\tstorj.io/storj/private/lifecycle.(*Group).Run.func2:80\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
ERROR nodestats:cache Get pricing-model/join date failed {“error”: “context canceled”}
ERROR contact:service ping satellite failed {“Satellite ID”: “12tRQrMTWUWwzwGh18i7Fqs67kmdhH9t6aToeiwbo5mfS2rUmo”, “attempts”: 1, “error”: “ping satellite error: rpc: dial tcp 34.86.70.247:7777: operation was canceled”, “errorVerbose”: “ping satellite error: rpc: dial tcp 34.86.70.247:7777: operation was canceled\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
INFO contact:service context cancelled {“Satellite ID”: “12tRQrMTWUWwzwGh18i7Fqs67kmdhH9t6aToeiwbo5mfS2rUmo”}
ERROR contact:service ping satellite failed {“Satellite ID”: “12rfG3sh9NCWiX3ivPjq2HtdLmbqCrvHVEzJubnzFzosMuawymB”, “attempts”: 1, “error”: “ping satellite error: rpc: dial tcp: operation was canceled”, “errorVerbose”: “ping satellite error: rpc: dial tcp: operation was canceled\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
ERROR contact:service ping satellite failed {“Satellite ID”: “1wFTAgs9DP5RSnCqKV1eLf6N9wtk4EAtmN5DpSxcs8EjT69tGE”, “attempts”: 1, “error”: “ping satellite error: rpc: dial tcp: operation was canceled”, “errorVerbose”: “ping satellite error: rpc: dial tcp: operation was canceled\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
INFO contact:service context cancelled {“Satellite ID”: “1wFTAgs9DP5RSnCqKV1eLf6N9wtk4EAtmN5DpSxcs8EjT69tGE”}
INFO contact:service context cancelled {“Satellite ID”: “12rfG3sh9NCWiX3ivPjq2HtdLmbqCrvHVEzJubnzFzosMuawymB”}
ERROR contact:service ping satellite failed {“Satellite ID”: “12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S”, “attempts”: 1, “error”: “ping satellite error: rpc: dial tcp: operation was canceled”, “errorVerbose”: “ping satellite error: rpc: dial tcp: operation was canceled\n\tstorj.io/common/rpc.TCPConnector.DialContextUnencrypted:106\n\tstorj.io/common/rpc.TCPConnector.DialContext:70\n\tstorj.io/common/rpc.Dialer.dialEncryptedConn:180\n\tstorj.io/common/rpc.Dialer.DialNodeURL.func1:101\n\tstorj.io/common/rpc/rpcpool.(*Pool).Get:87\n\tstorj.io/common/rpc.Dialer.dialPool:146\n\tstorj.io/common/rpc.Dialer.DialNodeURL:100\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:124\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatellite:95\n\tstorj.io/storj/storagenode/contact.(*Chore).updateCycles.func1:87\n\tstorj.io/common/sync2.(*Cycle).Run:92\n\tstorj.io/common/sync2.(*Cycle).Start.func1:71\n\tgolang.org/x/sync/errgroup.(*Group).Go.func1:57”}
INFO contact:service context cancelled {“Satellite ID”: “12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S”}
Error: piecestore monitor: error verifying location and/or readability of storage directory: node ID in file (1G4bfNi839FKw1gqghezSnSWL1JFqipMqS5wUG5zBp3oAxwuwr) does not match running node’s ID (12JzAjjGdgVQE5sNDcE3a1i8QVDHpxKiuArY2akYC4UjbSUeqoS)

The docker command is :
docker run -d --restart unless-stopped --stop-timeout 300
-p 28967:28967
-p 127.0.0.1:14002:14002
-e WALLET=“0x9Xabcdef6”
-e EMAIL=“mXX@ gmail. com”
-e ADDRESS=“81.11.11.11:28967”
-e STORAGE=“700GB”
–mount type=bind,source=“/home/pi/.local/share/storj/identity/storagenode”,destination=/app/identity
–mount type=bind,source=“/media/pi/1To/storj”,destination=/app/config
–name storagenode storjlabs/storagenode:latest

Seems you also generated a new identity. If this is intentional, then you must remove old data too (because the identity will not accept it) and perform the setup step again:

  1. You need to stop and remove the container
docker stop storagenode
docker rm storagenode
  1. Clean the storage location
  2. Perform setup step once: Storage Node - Node Operator (this step is required for any new identity).
  3. Then run a container with all your parameters.

Indeed, I have all delete recreate and now all work.

Thank you for your help.

2 Likes