I am no expert, but here is what I would do assuming that you need to replace the watchtower with a new instance:
Stop the watchtower: docker stop watchtower
Remove the watchtower: docker rm watchtower
Run the watchtower: (where storagenode is your node name)
docker run -d --restart=always --name watchtower -v /var/run/docker.sock:/var/run/docker.sock storjlabs/watchtower storagenode watchtower --stop-timeout 300s --interval 21600
Thx, for attempting to help. However, I’ve tried that many times with the same results. Anyway, I’ve retried again but this time I also added the –run-once flag so it will try to update immediately and the result is the same as before as seen in the watchtower logs:
storj@pine64 : ~$ docker logs -t watchtower
2020-07-05T02:22:44.828130831Z time="2020-07-05T02:22:44Z" level=info msg="Running a one time update."
2020-07-05T02:22:44.828382880Z time="2020-07-05T02:22:44Z" level=debug msg="Checking containers for updated images"
2020-07-05T02:22:44.828417839Z time="2020-07-05T02:22:44Z" level=debug msg="Retrieving running containers"
2020-07-05T02:22:44.848491689Z time="2020-07-05T02:22:44Z" level=debug msg="Pulling storjlabs/storagenode:latest for /storagenode"
2020-07-05T02:22:44.854495744Z time="2020-07-05T02:22:44Z" level=debug msg="No credentials for storjlabs in /config.json"
2020-07-05T02:22:44.854588705Z time="2020-07-05T02:22:44Z" level=debug msg="Got auth value: "
2020-07-05T02:22:44.854614331Z time="2020-07-05T02:22:44Z" level=debug msg="Got image name: storjlabs/storagenode:latest"
2020-07-05T02:22:44.854637873Z time="2020-07-05T02:22:44Z" level=debug msg="No authentication credentials found for storjlabs/storagenode:latest"
2020-07-05T02:22:45.704945124Z time="2020-07-05T02:22:45Z" level=debug msg="No new images found for /storagenode"
2020-07-05T02:22:48.062868865Z time="2020-07-05T02:22:48Z" level=info msg="Running a one time update."
2020-07-05T02:22:48.063088871Z time="2020-07-05T02:22:48Z" level=debug msg="Checking containers for updated images"
2020-07-05T02:22:48.063310211Z time="2020-07-05T02:22:48Z" level=debug msg="Retrieving running containers"
2020-07-05T02:22:48.091711894Z time="2020-07-05T02:22:48Z" level=debug msg="Pulling storjlabs/storagenode:latest for /storagenode"
2020-07-05T02:22:48.103093984Z time="2020-07-05T02:22:48Z" level=debug msg="No credentials for storjlabs in /config.json"
2020-07-05T02:22:48.103198821Z time="2020-07-05T02:22:48Z" level=debug msg="Got auth value: "
2020-07-05T02:22:48.103223363Z time="2020-07-05T02:22:48Z" level=debug msg="Got image name: storjlabs/storagenode:latest"
2020-07-05T02:22:48.103246905Z time="2020-07-05T02:22:48Z" level=debug msg="No authentication credentials found for storjlabs/storagenode:latest"
I think I’ve seen this error before a long time ago. It only happened for someone who had logged into docker hub in their client. If this applies to you, try logging out first and trying again.
Been busy so just getting back to this. I’ve stopped and removed watchtower. I even removed the image (docker rmi) and this is a list of my images:
storj@pine64:~$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
storjlabs/storagenode latest 3d9e434f32d0 2 weeks ago 25MB
storjlabs/watchtower latest b550a479ea32 8 months ago 13.7MB
Are this IMAGE IDs correct? It says the watchtower image was created 8 mos. ago, is that correct? No matter what I have done I still see the same result… No updates being done and the following messages:
2020-07-13T04:05:12.795280889Z time="2020-07-13T04:05:12Z" level=debug msg="Checking containers for updated images"
2020-07-13T04:05:12.795619736Z time="2020-07-13T04:05:12Z" level=debug msg="Retrieving running containers"
2020-07-13T04:05:12.824539837Z time="2020-07-13T04:05:12Z" level=debug msg="Pulling storjlabs/storagenode:latest for /storagenode"
2020-07-13T04:05:12.832332811Z time="2020-07-13T04:05:12Z" level=debug msg="No credentials for storjlabs in /config.json"
2020-07-13T04:05:12.832421731Z time="2020-07-13T04:05:12Z" level=debug msg="Got auth value: "
2020-07-13T04:05:12.832448399Z time="2020-07-13T04:05:12Z" level=debug msg="Got image name: storjlabs/storagenode:latest"
2020-07-13T04:05:12.832474608Z time="2020-07-13T04:05:12Z" level=debug msg="No authentication credentials found for storjlabs/storagenode:latest"
2020-07-13T04:05:13.541413398Z time="2020-07-13T04:05:13Z" level=debug msg="No new images found for /storagenode"
Should I just give up at this point and we all admit that. at least for me, watchdog is a piece of excrement and it should just be flushed. This is getting way too frustrating.
BTW, when I do a docker logout , as suggested, this is what I get:
storj@pine64:~$ docker ps -a`
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fee59cdd9d53 storjlabs/watchtower "/watchtower storage…" 24 minutes ago Up 24 minutes watchtower
f0881c59d33f storjlabs/storagenode:latest "/entrypoint" 8 days ago Up 10 hours 0.0.0.0:7777->7777/tcp, 0.0.0.0:14002->14002/tcp, 0.0.0.0:28967->28967/tcp storagenode
Let me just add this again before I am once again asked for this information:
The official documentation does not have the –platform arch64 specified in the pull. When I try to pull without it I see the following message:
storj@pine64 : ~ $ docker pull storjlabs/watchtower
Using default tag: latest
latest: Pulling from storjlabs/watchtower
no matching manifest for unknown in the manifest list entries
To get the pull to work I have to add the extra platform parameter as such:
storj@pine64 : ~ $ docker pull storjlabs/watchtower --platform aarch64
Using default tag: latest
latest: Pulling from storjlabs/watchtower
Digest: sha256:31c0c558ec8adad5cec6cb86320c58018289ca22dafa019c31cd5d6f65f03655
Status: Image is up to date for storjlabs/watchtower:latest
You will also notice that the :latest suffix has been as the default tag. Again, earlier in this was told I should be using the :beta. I have tried the :beta tag but that does not work:
storj@pine64 : ~ $ docker pull storjlabs/watchtower:beta
Error response from daemon: manifest for storjlabs/watchtower:beta not found
storj@pine64 : ~ $ docker pull storjlabs/watchtower:beta --platform aarch64
Error response from daemon: manifest for storjlabs/watchtower:beta not found
Anyway, just wanted to provide this information before someone decides to ask me again about why I am using the latest tag and the aarch64 platform option.
Having some spare time so I decided to try to reproduce your problem.
uname -a
Linux raspberrypi3 5.3.0-1018-raspi2 #20~18.04.1-Ubuntu SMP Wed Feb 5 04:56:34 UTC 2020 aarch64 aarch64 aarch64 GNU/Linux
1
docker pull storjlabs/storagenode:latest --platform aarch64
“–platform” is only supported on a Docker daemon with experimental features enabled
docker --version
Docker version 18.09.7
4 Corrupt auth
docker pull storjlabs/watchtower:latest
WARNING: Error loading config file: /root/.docker/config.json: illegal base64 data at input byte 0
latest: Pulling from storjlabs/watchtower
3a807ee5a0f8: Pull complete
18bdfcdb74a4: Pull complete
047a83254312: Pull complete
Digest: sha256:31c0c558ec8adad5cec6cb86320c58018289ca22dafa019c31cd5d6f65f03655
Status: Downloaded newer image for storjlabs/watchtower:latest
Nothing I do looks like your result!
It looks like your docker is looking for an auth that it doesn’t have in .docker/config.json. Did you ever have a login for docker hub that you used here?
I think you need to investigate why you need the “platform” switch as a normal setup doesn’t need it.
The docker on this system has only ever been used for storj so if there was any login done for any reason it was not done by me and was done by storj. I have already tried running docker logout (as seen above) which reported there were no login. This is the content of my .docker/config.json file: