Docker node offline after move

After lots of trouble with dead and dying equipment, power & net problems and a UPS not doing its job I ended up moving both my nodes to Docker on Linux. My first node is fine, but I cannot get the 2nd online. I checked the router ports, found a port error in my config. After that it went from “connection refused” to this:

2021-04-28T04:06:37.212Z ERROR contact:service ping satellite failed {"Satellite ID": "12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S", "attempts": 7, "error": "ping satellite error: failed to dial storage node (ID: 14cU4e4unH4cesN9Wu9oZfDRug5XiYNYn6mPZ4i3qhXrC7WU23) at address thainode.ddnsfree.com:28967: rpc: tls peer certificate verification error: tlsopts error: peer ID did not match requested ID", "errorVerbose": "ping satellite error: failed to dial storage node (ID: 14cU4e4unH4cesN9Wu9oZfDRug5XiYNYn6mPZ4i3qhXrC7WU23) at address thainode.ddnsfree.com:28967: rpc: tls peer certificate verification error: tlsopts error: peer ID did not match requested ID\n\tstorj.io/storj/storagenode/contact.(*Service).pingSatelliteOnce:141\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"}

This just repeats forever. What have I done wrong?

Thanks,
Peter.

From what he understands from this log (of course I can be wrong), on thainode.ddnsfree.com:28967 a node with a different ID than the satellite expects is reported …
you have mixed ports … (two nodes on the same external port?)
or (hopefully not)
node identities …

Thanks. Yes, that’s what it sounds like. However, the host port is set to 28968:

docker run -d --restart unless-stopped --stop-timeout 300 \
    -p 28968:28967 \
    -p 14002:14002 \
    -e WALLET="xxx" \
    -e EMAIL="xxx" \
    -e ADDRESS="thainode.ddnsfree.com:28968" \
    -e STORAGE="3.5TB" \
    --mount type=bind,source="/mnt/WDred4TBexQM2/storj2/identity/",destination=/app/identity \
    --mount type=bind,source="/mnt/WDred4TBexQM2/storj2/",destination=/app/config \
    --name storagenode2 storjlabs/storagenode:latest

Node 1 looks like this:

docker run -d --restart unless-stopped --stop-timeout 300 \
    -p 28967:28967 \
    -p 14001:14002 \
    -e ADDRESS="thainode.ddnsfree.com:28967" \
    --mount type=bind,source="/mnt/WDred4TBexQM2/storj1/identity/",destination=/app/identity \
    --mount type=bind,source="/mnt/WDred4TBexQM2/storj1/",destination=/app/config \
    --name storagenode1 storjlabs/storagenode:latest

If these nodes are on the same physical machine then on the router you need to set for the same IP and:
for node 1: external port 28967-28967 internal port 28967-28967
for node 2: external port 28968-28968 internal port 28968-28968

example (for port 28967 on my router):

port28967

(for port 28965 on my router):

That’s what I have. The port numbers are unchanged in the routers and get translated by docker. I had it working before. I’m wondering if, in all this chaos I have, node 2 got the id files from an earlier, now defunct node.

I think I just give up on it. It only owes me pennies, as it had only been running for a couple of months.

But many thanks for your time.

Doesn’t understand: in the first post it was logged that it communicates (and can’t) on port 28967 …
in the “docker run” you have port 28968 for the node (what does not want to work?) …

maybe you have a wrong entry in “config.yaml” for this node? (you wrote something about moving the node to linux - and where from? from windows?)

pity those “hardest” months …

Docker translates the external port 28968 to the internal 28967, right?

If so, then storagenode communicates on 28967.

Hmm, yougetsignal says the port is closed…

I think I will retry with all the ports on 28968, internal and external.

external port of the computer running the node, not the external port from the Internet (on the router)