-
-
Notifications
You must be signed in to change notification settings - Fork 164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Windows (Docker) support? #15
Comments
I was able to run it directly (no containers) on Win10 Pro without too much hassle. |
@elliottback interesting. I'm assuming you're using the windows linux subsystem with the |
@AnalogJ no, I installed the golang ecosystem and am running the collector directly on a local windows build. It's able to get all the attributes except power-on time for a WDC WDS200T2B0B-00YS70. |
@elliottback can you share more information on how to get the collector running on Windows? |
I have a scheduled task that runs:
|
Hi. Just wondering whether there is any update on this. I'd love to see Windows support for this tool. |
This seems to work fine on windows. I can confirm what ellittback did. However a bit more detail. And this assumes you have Go Lang installed on a windows system.
Unfortunately SMART doesnt seem compatible with our enterprise PERC raid controllers XD, but for diretly attach drives it seems to work. |
I created new windows binaries for the Scrutiny Can I get some of you to take a look and verify that they are working? |
Hi,
|
Did you install smartmontools for windows? |
Yes, but apparently I should have also restarted the computer after installing it. The collector now starts, but it gives the following errors:
The web server now works (I didn't use the right file structure initially), but the web-page just says "No Devices Detected!" before proceeding to show an empty dashboard. |
Fixed it. The anti-ransomware protection in Windows Defender was blocking smartctl.exe because it was trying to access "protected memory". It was sufficient to just go to Defender and "allow" the app the run. The dashboard now loads all the drives. Some problems still remain:
|
Some more info: The device I said that appears blank is actually appearing twice. Once it appears normal with name and info and the other time blank with only /dev/sde shown; both devices have /dev/sde. No other sdX appears twice. |
Hey @gabrielv33 To solve your remaining issues, can you run the following commands and attach the outputs.
|
Hi, is there a way to make scrutiny work on windows via docker? Thanks! |
Hey @Issam2204 Having said that, I don't see any reason why it wouldn't work. The The I'm happy to review PRs and provide feedback if someone is interested in picking this up. |
I’ve been attempting to get the collector working in Windows 10 with Docker Desktop installed using WSL2 but I can’t find a way to get the device mapping to work. The Windows drives are mounted at |
So this is tricky... WSL2 is actually a very small and special hyperv virtual machine. So while the drives are "mounted" there. I do not believe they are the actual disk are. You could run the collector/server piece in a WSL2 docker container, and you could compile the golang client piece and run that on windows as mentioned above. This might work. However I do not believe that the WSL2 can actually see the disk devices... only the mounts. |
@jaytay79 are you trying to create a native Windows (Core/Nano) docker image for the Scrutiny Collector? Or are you running the linux based Scrutiny collector docker image using Docker For Windows (which runs in a VM IIRC)? |
I was trying the Linux collector container running in Windows Docker using WSL2. As I mentioned I believe that in Windows 11 you would be able to mount devices to /dev/sd* and if so then the collector container should work (well, in theory anyway) but unfortunately the |
@jaytay79 / @icsy7867 / anyone else if you're willing to be testers, I can throw together a quick Windows Nano/Core based docker image and we can see if that works? We'll probably want to do this live, so I'll need you to jump on Discord with me: Selfhosted Discord - https://selfhosted.show/discord - |
Would definitely be willing. But might be a couple weeks before I'll have time. Out of town this weekend, short week and out of town again.... But probably available after that if needed. |
please try this native Windows Collector docker image when you get a chance:
The image source code lives here: https://github.com/AnalogJ/scrutiny_windows_test Once we verify its working, I can move it over to the main repo. |
I can confirm that it runs (after switching Docker to Windows container mode) but I have no clue how I can get the drives/devices mapped or if that's even possible with Windows Docker images. I’ll try and have a further look when I have some more free time. One more thing to note is that the image is pretty big - over 5GB! |
@jaytay79 great, can you try to pass in devices using the instructions here? You might also want to try passing in the |
Unfortunately there's a couple of issues: adding |
I think the process isolation error is because I only have one flavor of windows docker image -- based on Which version of windows are you running? |
I created 2 separate images for windows for testing.
|
Sorry, I’ve been rather busy the last couple of days so I haven’t had a chance to do much with this. I’m getting manifest unknown on both of those? I’m running Windows 10 Pro 21H2. |
apologies @jaytay79 the build failed. |
Ok so I can only use ltsc2019 ( |
I can try building on some additional windows base images. Do you see anything that may match your system better in the https://hub.docker.com/_/microsoft-windows-servercore?tab=description |
I had some time to fiddle around with a few things. My desktop I am testing on is 21H2, and apparently this has issues with the isolation mode requirement. However, I could successfully run: Also, it seems as though no one has tried to pass through an entire disk to a windows container... However I found a couple useful links: However, if you could provide the compiled .exe, there is no reason someone couldnt run a linux web server, and use the collector.exe with task scheduler on windows. Still trying a few things though. |
@icsy7867 oh, if you're just looking for a windows collector.exe file, that's already generated automatically and attached to each release. Look here: https://github.com/AnalogJ/scrutiny/releases/latest for |
No, I don't need it. I was just suggesting that anyone in this position could easily just run the collector.exe via task manager in windows and point it to a linux container running the web server. I dont have this need, but was just giving my input trying to run your windows container. |
No longer working on Windows with the latest updates. I'm getting the following when trying to run the web executable:
|
@gabrielv33 can you open a new issue for that? This thread is mostly focused on Windows Docker support now. |
I'm not all too familiar with Docker and having trouble fixing the issue I am getting while trying to run the test windows image from this thread. I wasn't having this issue when I was running the linux container and it only happens when running the command within Window's containers Command: docker run -it --rm -p 8080:8080 -p 8086:8086 \
-v ./scrutiny:/opt/scrutiny/config \
-v ./influxdb2:/opt/scrutiny/influxdb \
-v /run/udev:/run/udev:ro \
--cap-add SYS_RAWIO \
--device=/dev/sda --device=/dev/sdb \
--name scrutiny ghcr.io/analogj/scrutiny_windows_test:ltsc2019 Error:
Also my E drive is not my main drive if that matters. It's my secondary hard drive. Though again, I had no issue when running Scrutiny within the linux containers. |
Weird, not sure why docker is complaining about Windows paths. I guess you could try setting it up with a |
I'm trying to get this working on Windows Server 2019, I installed smartmontools and the web server is running but with no devices listed. I tried the above code and got output for my device (/dev/sda). I also followed the instructions from the readme and I keep getting this output:
I saw referenced above about allowing it through Windows Defender, but I am not getting any notifications regarding smartctl being blocked. |
Just wanted to say that i was able to get scrutiny working using this method. I'm currently running docker using WSL2 (thus was unable to use the omnibus image, no drives shown) and running just the For anyone else having issues with running Scrutiny on docker using WSL2 on windows:
Hope this helps anyone who comes across this thread. |
@Robert-Zacchigna Thanks! this looks great 🥳 Thanks again! |
Glad you find it useful, i can create the doc myself and open a pull request if you want. I'll do my best to follow the current doc format you have or if you would rather just do it yourself, either way is fine. Thanks. |
@Robert-Zacchigna sorry I got distracted with some other work. If you could open a PR to add a |
Plan for eventual windows support.
API
Collector
Docker
The text was updated successfully, but these errors were encountered: