Latest Docker Desktop for Windows compatibility?

Hello,

I’m still on the last release of the previous major branch of Docker: 2.1.0.5. Does somebody can confirm me if the latest version of Docker Desktop, Docker Desktop Community 2.2.0.5 for Windows, is working for you, especially for the storage nodes operation who upgraded from the previous major version ? Because in the past, it broke the nodes, and I suspect its due to the Docker NAT removed from this update, which seems necessary to node to work.

The reason is I’ve troubles of small drops in the second node on Docker, seen on Storj Info, but virtually its still online with the uptime and uptime robot report it online too (but it only check each 5 minutes). It looks it affects the uptime of the second node in the dashboard, the micro drops looks be more frequent after several days of uptime, and reboot the machine is fixing the issue. So I suspect Docker being the problem for managing the two containers at the same time, and I would like upgrade to the lastest Docker Desktop because a lot of improvements have been made (and it could fix or just improve this issue). I could attach the other node on another machine, but in my room and my actual setup, and because I use locally the two hard drives for myself, I really don’t wish use that option.

Capture
So first node is perfect, second node is having micro-drops.

Capture
For Uptime Robot, last 24h here, its perfect, the micro drops is totally fair for its point of view, but it only report each 5 minutes too, so I suspect its not a very good value. It reports me offline when I’m really offline (connection down and reboot the machine).


The uptime is not affected at all from dashboard. 113h ago, I upgraded my two ethernet drivers (Intel & Realtek), Win 10 and rebooted, so its normal. But satelitte uptime looks bad: Salt: 96.7% - Asia: 95.2% - US: 93.2% - Eu West: 94.5% - Eu North: 92.9%, but this node was offline the first days of running when I posted on the forum to figure out how configure this before it works… but the new satellitte started with 86% uptime, then now ̶9̶2̶,̶9̶%̶ 93,7%… Though, the others satellittes % are increasing progressively. (The older first node (several months) is globally close to 99%.)

For my feedback: For long a period of time, because the node and uptime robot were showing me a full uptime, I didn’t looked Storjnet.info, so when Storj updated the dashboard for showing the satelittes lifetime uptimes, and when I came back on this Storjnet, I was quite surprised.

From the current state with the dashboard uptime and logs, its not possible to suspect that kind of micro-drops, because nor Uptime Robot often suggested on the forum neither the dashboard GUI/CLI uptime are stating this kind of issue. For satellitte, a separated daily uptime would be more useful to detect this kind of issue when the Storage Node Operator is on the machine (like me often) to understand what happened eventually. I would like be able to check the uptime check in the logs directly (like the audit check) in the future, which is not still the case today.

I wish fix that issue with docker before thinking about moving it on another machine. Also, I see Docker NAT is dealing with both containers to send the traffic to the two ethernet interfaces, so it is possible to create a second Docker NAT for the other node? Maybe it would be better like this to separate the process?

Well, at first, I would like upgrade Docker to see how well/worst it performs. So, can you just confirm me for the SNO on Docker Windows if the last version is working for you ?

Node is 12B5suGhHi6Wfqx562gRRxm9zD4nuvb2Tonrk9tzkERnzSgRngf

Cheers.

Hold tight for 2004 Windows 10 release. You can use WSL2.0 for a near native linux experience with docker in windows from what it looks like.

Otherwise if you must use windows, i’d use the supported releases that Storj has produced for Win10.

It still uses a VM to work with the docker.

Good to know for the 2004 update, I’ll look into it, but I’m pretty sure its a problem relative to Docker. This major update could also affect negatively the 2.1.0.5 which is not the old branch of Docker (so they will work fix eventual incompatibilities with the last release of Windows 10 on the last branch more probably).

Also, I read in their releases than you can re-add Docker NAT by changing a file, but they say themself they don’t garantee it will be possible in the future release, because they want obviously remove the Docker NAT. I just guessed it could be the reason why the node doesn’t work anymore, but I’m not developper of the node, so I was hoping somebody could confirm me the node is operational on Docker Desktop for Windows 2.2.0.5, like the 2.1.0.5 (the last 2.1.x.x version). I think it makes sense to work with the latest version of Docker.

I can’t use the Windows node because I’m using two containers on Docker Desktop listening separately to each of my two ethernet interfaces (on 192.168.1.2/Intel and 192.168.178.2/Realtek) linked to 2 different routers, FAI and internet IP. Except the second node is connected to a sort of dinosaur, but I had no issue when the first node was connected to this router. The problem occured only with the second node, but it doesn’t affect the first at all.

I’ll also buy more probably the Fritzbox router because I don’t entirely trust my FAI router (its not possible to see the logs, RAM or CPU usage of the router, and no statistic at all of the traffic), but since the problem is temporarly resolved by rebooting all the machine, I guess Docker could be more probably the problem. Or Windows, as you said, so we’ll see in May, but I could be disqualified before when uptime disqualification will be enabled.

I read I could use WSL 2.0 and enable engine on this new branch of Docker in the settings (https://docs.docker.com/docker-for-windows/wsl-tech-preview/), but I need confirmations of users its working before I put in danger and break again my nodes (like I did with 2.2.0.0 in the past and a lof of SNO users on the forum).

Also, dumb question but, if I use WSL 2.0. with Ubuntu/Debian distro but enable only the engine from Docker Desktop settings and use/recreate my docker containers, does the drives will work with NTFS like now ?

They should. I didn’t found information, how they supposedly will expose the host drives to the VM, but I think they will still use a SMB for that. So, WSL 2.0 is not better than Docker desktop with own Lightweight Linux VM.
I run the Docker desktop 2.2.0.3 with issues:

  • sometimes it stops working, the restart of Docker engine is solution
  • I have had to reset it to the factory default two or three times since update to this version
  • it can’t autoupdate itself to the next version. It’s simply doesn’t work. I forced to download a latest installer to update it.

I had not such issues on 2.1

Will update to the 2.2.0.5 and will see, how it’s proceed further.


Updated. The update was painful. It can’t install even with downloaded installer, because it was not able to finish the current running desktop and previous attempts to update itself.
Killed all processes of Docker desktop, shutdown the Docker VM in the Hyper-V (just shutdown, not remove) and finally updated to the 2.2.0.5. Proceed the hard reset to the factory defaults for any case.

Run the node as usual, the node is working and online.
However, I think I will have such problems with the next update too.


Update. I rolled back to 2.1.0.5, no more issues.

2 Likes

I’ve read some preliminary test that mounting a linux file system within WSL2 performs better than native NTFS, despite being virtualized. Not sure how extended it was though…

/mnt (ing) an NTFS file system within the linux system performs worse than native NTFS because of SMB. So yes, don’t mount this way.

HyperV can passthrough a full disk though, and you can format it in native ext4 in the linux filesystem.

1 Like

Yes, maybe I’m lucky with the 2.1 because it never really stopped to work for me, but the performances of the second node are degrading day after day until I reboot, but again, it could also be Windows itself or my old router (easiest thing to do for me is replacing this prehistoric router by the Fritzbox 7530 working perfectly fine on the first node, with less than 10% CPU used on the router (including my own usage), no hot temp and free RAM available for dns cache). Though, as you know, I have to reboot for the Windows update sometimes (or drivers/softwares updates more rarely), so it resolves also the issue for some days, and I could live with that. It looks perform also better since I upgraded my Intel driver (less drops since that). As Uptime Robot reports, its like -0,4% uptime on 24h scale, and satellites uptimes are now increasing daily, so mmh, I keep my fingers crossed that I’ll be good for the uptime DQ implementation. Ultimately, I’ve mini pc’s Windows 10 running in another room, so I will take the more reliable and connect it for the second node.

About pure performance, here with my i7 4790T (sharing all my cores in Docker), it never exceeds 25% for the Vmmem process, it doesn’t really impact me. I lose the races with some uploads, I could use a reliable SSD (Samsung 850 Pro) for cache, but I’m not sure wearing up & increasing the risk is necessary since its filling smoothly my 2x allocated 8tb on each disk (I could increase maybe to 10 each, and I’m thinking peacefully about 2 more drives, but I know its essentially test data, so it will eventually wipe off of my disks). I’m waiting the public availability and pricetag (if its “fair” ouch) of the Ultrastar DC HC550 (Western Digital 18tb drives). No worries, not only for Storj, but also for our own thousands of videos/photos hehe !

Thank you very much for your feedback, I’m also sure it will be helpful for other SNO Docker Desktop users. Thanks @KernelPanick .

I think I’ll wait for 2004 Win update see what happens, then if nothing changes (or worst), maybe I’ll change router or/and move to the 2.2. Just one more thing @Alexey, are you sure you didn’t added a line in the Docker config files for enabling Docker NAT in 2.2? So, its still working/living without the Docker NAT vEthernet ?

Whatever it happens, in this special climate where I see some SNO leaving or thinking about it, I want also to add that I will not give up Storj as SNO, I’m really excited to play a role in this project, I want stay in boat and keep participating to the global decentralized cloud storage, which is for me our better internet future (including a way to replace streaming and video communities centralized platforms in ongoing and future open-source projects).

See you eventually in Town Hall in the virtual room where I’ll take a chair.

1 Like

I didn’t change anything. This is for reason - I should know, how our Windows SNO will deal with it.

1 Like

Also running 2205 sometimes it works more than a week sometimes it stops after a few hours or days. Docker dashboard is then no longer showing any container (and they are also not running any more). Restart of docker desktop is fixing it then. But obviously this is causing bad reputation/online time :frowning:

2 Likes

Today I forced to reset to factory defaults again. The version is 2.2.0.5
The standard “Restart” doesn’t help.

I hadn’t neither first problem nor the second in the 2.1.*.
So, I would recommend do not upgrade to the 2.2.*

2 Likes

It’s happened again. I rolled back to 2.1.0.5

1 Like

Hey Alexey,

You probably noticed it like me, but the new 2.3 branch is now released, if you feel motivated to test it, haha. Cheers.

No, I’m not. I disappointed in quality of the new branches of Docker desktop.

1 Like

So after downloading v2004 Win10 and getting Ubuntu & Docker Desktop for WSL 2.0, it does look like passing block based storage from physically connected devices is not currently possible.

You could make this work if you connect to an iSCSI LUN with good performance. Or, by mounting the NTFS connected drive within Ubuntu with decreased performance:

mkdir /mnt/f
mount -t drvfs f: /mnt/f

OR
even more experimentally:

1 Like