If last contact does update but very infrequently it’s usually because your identity isn’t signed.
Try
docker exec storagenode ls /app/identity
You should see 6 files, ca.cert should have a size over 1000 and identity.cert should have a size over 1500. If that’s not the case sign your identity or find the signed version of your identity and make sure you used that.