Windows Task Worker Installer Guide
Component: Diskover Task Worker (Windows)
Deployment Method: Windows Installer (Diskover-v2.x.x.exe)
Platform: Windows 10+ / Windows Server 2019+
Version: 2.4.0+
Overview
The Diskover Task Worker is the Windows component that runs the diskoverd scanner daemon on a Windows machine. It enables Windows-based scanning and task execution as part of your Diskover deployment.
This guide walks you through installing the Diskover Task Worker on Windows using the Diskover-v2.x.x.exe installer. The installer automates the installation of Python, required pip packages, the Diskover build, and the NSSM service manager — which runs diskoverd as a Windows service.
When to use this guide:
You are adding a Windows-based worker/scanner node to an existing Diskover environment
Your scan targets are Windows file systems (CIFS/SMB shares, local NTFS volumes)
Dependencies:
A running Diskover environment (Elasticsearch, Diskover Admin, Diskover Web) must already be deployed and accessible from the Windows machine
The Windows worker registers with Diskover Admin via the Diskover Web URL provided during installation
Prerequisites
Hardware Requirements
Component |
CPU |
Memory |
Disk |
Notes |
|---|---|---|---|---|
Windows Task Worker |
4+ cores |
8 GB+ RAM |
50 GB+ |
Scale CPU/RAM based on scan volume |
Software Requirements
Requirement |
Detail |
|---|---|
OS |
Windows 10+ or Windows Server 2019+ |
Admin privileges |
The user running the installer must have local administrator rights |
Network connectivity |
The Windows machine must be able to reach the Diskover Web UI host (for worker registration) and Elasticsearch (for indexing) |
Credentials
Credential |
Purpose |
How to Obtain |
|---|---|---|
Windows admin account |
Run the installer and bind the NSSM service |
Customer infrastructure |
Diskover Web URL |
Register the worker with Diskover Admin |
Your existing Diskover deployment (e.g., |
Diskover License |
Valid license must be installed on the Diskover Admin server |
Provided by Diskover Data |
Pre-Installation Setup
Disable Windows App Execution Aliases for Python
By default, Windows binds the python.exe and python3.exe commands to the Microsoft Store. Even if Python is already installed manually, running python will redirect you to the Store instead of executing the installed Python binary. The installer installs Python manually, so this setting must be disabled before running the installer.
Open the Windows search bar and search for "Manage App Execution Aliases"
Find python.exe and python3.exe in the list
Set both to Off
Why this matters: If these aliases remain enabled, the installer's Python commands will be intercepted by Windows and fail silently or redirect to the Microsoft Store.
Installation — Fresh Install
Step 1: Run the Installer
Launch Diskover-v2.x.x.exe as an administrator and follow the installation wizard.
Important: Pay attention to which user account is running the installer. The installer installs Python and configures paths for the user running it. If you authenticate as a different admin user via the UAC prompt, the paths will be set for that user instead. This matters for NSSM service configuration later (see Post-Installation Configuration).
Step 2: Provide the Diskover Web URL
During the wizard, you will be prompted for the Diskover Web URL. This is the URL of your existing Diskover Web UI — it allows the worker to register with the Diskover Admin service and fetch its configuration (Elasticsearch connection details, scan settings, etc.).
Enter the URL in the format: http://<web-host-ip> or https://<ssl_domain>
Step 3: Wait for Installation to Complete
The installer performs the following actions automatically:
-
Creates installation directories:
C:\Program Files\Diskover\— main Diskover build directory%APPDATA%\diskoverd\— configuration directory (e.g.,C:\Users\<username>\AppData\Roaming\diskoverd\)
-
Installs Python 3.12.0:
Downloads
Python3.12.0.exeintoC:\Program Files\Diskover\Installs Python silently (
/quiet) for the current user only (InstallAllUsers=0)Adds Python to the system PATH (
PrependPath=1)
-
Installs pip packages:
Ensures pip is available and up to date
Installs all dependencies from the bundled
requirements.txt
-
Installs NSSM (Non-Sucking Service Manager) v2.24:
Downloads and extracts NSSM into
C:\Program Files\Diskover\Adds the NSSM binary to the system PATH
NSSM binary path:
C:\Program Files\Diskover\nssm-2.24\nssm-2.24\win64\
-
Creates the Diskover Windows service:
-
Creates a batch file at
C:\Program Files\Diskover\diskoverd-win-service.batcontaining:python "C:\Program Files\Diskover\diskoverd.py" -n %COMPUTERNAME%
-
Registers the service with NSSM:
nssm.exe install diskover "C:\Program Files\Diskover\diskoverd-win-service.bat"
-
Configures service logging:
nssm.exe set diskover AppStdout "C:\Program Files\Diskover\logs\service-start-log" nssm.exe set diskover AppStderr "C:\Program Files\Diskover\logs\service-start-error-log"
-
Note: The installer also creates a temporary build directory under
C:\Users\<username>\AppData\Local\Temp\<number>\<.tmp-staging-directory>\which holdsdiskover-2.x.x.zipandrequirements.txt. This directory is accessible until you click "Finish" in the wizard, in case you need to inspect its contents. Once “Finish” has been clicked, this temporary directory is removed.
Post-Installation Configuration
Step 1: Bind the NSSM Service to a User Account
After the installer finishes, you need to bind the Diskover service to a Windows user account. This determines which user context the diskoverd service runs under.
Open a PowerShell or Command Prompt as administrator and run:
# Check which user you are logged in as whoami # Open the NSSM service editor for the diskover service nssm edit diskover
In the NSSM editor:
Navigate to the Log On tab
Select This Account
Enter the output of the
whoamicommand as the usernameEnter the account password
Click Edit Service to save
Important — %APPDATA% path alignment: The installer places the
diskoverd\config.yamlconfiguration file in the%APPDATA%folder of the user who ran the installer. If you configure NSSM to run the service as a different user (or as the Local System Account), the service will not find the configuration file. In that case, you must copy thediskoverdfolder from the original user's%APPDATA%\Roaming\to the correct user's%APPDATA%\Roaming\directory.
Step 2: Start the Service
nssm start diskover
Step 3: Verify Service Startup
Tail the service startup logs to confirm diskoverd is running:
# Service startup logs Get-Content -Path "C:\Program Files\Diskover\logs\service-start-error.log" -Tail 25 -Wait # Diskover application logs Get-Content -Path "C:\Program Files\Diskover\logs\diskoverd_subproc_$env:COMPUTERNAME.log" -Tail 25 -Wait
Configuration
The Diskover Task Worker has a single configuration file:
File |
Location |
Purpose |
|---|---|---|
|
|
Worker configuration — contains the Diskover Web URL for worker registration |
Most Diskover worker configuration (Elasticsearch connection, scan settings, etc.) is managed centrally through Diskover Admin. The worker retrieves these settings automatically via the Diskover Web URL provided during installation.
Note: If you need to change the Diskover Web URL after installation, edit the
config.yamlfile directly and restart the service.
Service Management
The Diskover Task Worker runs as a Windows service managed by NSSM.
Action |
Command |
|---|---|
Start |
|
Stop |
|
Restart |
|
Status |
|
Edit service config |
|
Verification
Check |
How to Verify |
Expected Result |
|---|---|---|
Service running |
|
|
Service logs |
|
No errors |
Application logs |
|
Worker started, connected to Elasticsearch |
Worker registration |
Diskover Web UI → Task Panel → Workers tab |
Windows worker listed as online |
Manual test scan |
|
Scan completes, index appears in Diskover Web |
Troubleshooting
Issue |
Cause |
Solution |
|---|---|---|
|
Windows App Execution Aliases are still enabled |
Open "Manage App Execution Aliases" and disable python.exe and python3.exe (see Pre-Installation Setup) |
Service fails to start with user authentication error |
Windows machine is bound to an AD domain and NSSM cannot resolve the domain user SID |
In the NSSM editor, switch to Local System Account instead of a domain user. Then move the |
Worker cannot connect to Elasticsearch |
Diskover Admin has Elasticsearch set to |
In Diskover Admin, change the Elasticsearch connection from |
Config file not found by service |
NSSM service runs as a different user than the one who ran the installer |
Copy |
Installer fails to download Python or NSSM |
No outbound internet access |
Ensure the machine can reach the internet during installation, or use the offline installer variant |
Log File Locations
Log |
Location |
|---|---|
Service startup log |
|
Service error log |
|
Diskover application log |
|
Key File & Directory Locations
Path |
Purpose |
|---|---|
|
Main Diskover installation directory |
|
Diskoverd scanner daemon |
|
Manual scan entry point |
|
NSSM service startup batch file |
|
NSSM binary |
|
All log files |
|
Worker configuration file |
Support
When submitting a support ticket, include:
Diskover version and Windows Task Worker installer version
Windows OS version (
winver)NSSM service status output (
nssm status diskover)Service startup and error logs from
C:\Program Files\Diskover\logs\Diskover application logs
How the Application and Log On tabs are configured
Comments
0 comments
Please sign in to leave a comment.