Installation
Use this guide to install vScope on your chosen platform and verify that you can sign in. For a guided first discovery, follow the Quickstart.

Prerequisites
Section titled “Prerequisites”- Server meets system requirements: the recommended sizing is 4 vCPU, 16 GB for vScope within 24 GB total server RAM, and 120 GB SSD storage.
- Required ports are open internally.
- A vScope trial, or purchased license code.
- Download: Windows installer
- Run the installer
- By default, vScope installs the required components in C:\Program Files\vScopeServer. The install folder can be changed during installation, but using the default location is recommended.
- Finish; the vScope Server Service starts automatically.
- If needed, manage via Windows Services (
vScope Server Service). - Ensure firewall allows the UI port (default 80) and discovery ports.
Use a Debian/Ubuntu host compatible with the .deb package.
-
Download the package as
vscope-server-amd64.deb, then install it:Terminal window curl -fL -o vscope-server-amd64.deb https://dist.vscope.net/server/release/latest-amd64.debsudo apt install ./vscope-server-amd64.deb -
Edit
/etc/default/vscopeserver. Set the existingJAVA_OPTSline to allocate a 16 GB maximum Java heap, preserving any other custom JVM options:Terminal window JAVA_OPTS="$JAVA_OPTS -Xmx16g"This assumes the recommended 24 GB server, leaving headroom for the OS and the JVM memory outside the heap. See System Requirements for sizing details.
-
Restart the service to apply the memory setting:
Terminal window sudo service vscopeserver restart -
Browse to
http://<host>/(default port 80), then complete the license and administrator steps below. Configure HTTPS separately if required.
Storage
Provide 120 GB of available SSD storage for /var/lib/vscopeserver/vscopedata. Keep this directory when upgrading; it contains the installation’s persistent data.
Change the web port
Set org.osgi.service.http.port=<port> in /etc/vscopeserver/config.ini, restart vscopeserver, and allow the selected port through the firewall. Open http://<host>:<port>/.
- Create data volume:
docker volume create vscope-data- Run:
docker run -d \ --name vscope-server \ --pull always \ --restart unless-stopped \ --stop-timeout 330 \ --memory 24g \ -e JAVA_OPTS="-Xmx16g" \ -p 8080:80 \ -v vscope-data:/data \ europe-docker.pkg.dev/isl-vscope/release/vscope:latest--memory 24g caps what the container may use; -Xmx16g sets the maximum Java heap within that cap. The remaining headroom covers JVM memory outside the heap. Keep both values in step if you change either. See System Requirements for sizing details.
- Browse to
http://<host>:8080/.
Storage
Ensure the volume’s backing storage has 120 GB available. Mount persistent data at /data and keep the same volume when recreating or upgrading the container.
Change the web port
Change the host side of -p 8080:80 in the run command, then recreate the container with the same volume. For example, -p 8081:80 makes vScope available at http://<host>:8081/.
Check startup
Check that the container is running:
docker ps --filter name=vscope-serverIf vScope does not open, see Troubleshoot a container installation.
Connect discovery proxies
If proxies connect from outside the Docker host, add -p 4445:4445 to the server’s docker run command and allow TCP 4445 through the host firewall. Configure each proxy with the Docker host’s reachable hostname or IP and port 4445, then approve it in vScope.
You need kubectl access to a cluster with a default StorageClass that provisions ReadWriteOnce storage, an installed ingress controller, and a hostname you can configure in DNS. Nodes must be able to pull the image, and pods must be able to reach discovery targets. Linux containers cannot perform WMI discovery; use PowerShell/WinRM for Windows targets.
-
Choose an existing namespace. The examples use
default; replace it throughout if needed. Check your storage classes:Terminal window kubectl get storageclassA class should be marked
(default). To select another class, addstorageClassName: <your-storage-class>under the PVC’sspecbelow. -
Save the following as
vscope-server.yaml:apiVersion: v1kind: PersistentVolumeClaimmetadata:name: vscope-datanamespace: defaultspec:accessModes:- ReadWriteOnceresources:requests:storage: 120Gi---apiVersion: apps/v1kind: Deploymentmetadata:name: vscope-servernamespace: defaultspec:replicas: 1strategy:type: Recreateselector:matchLabels:app: vscope-servertemplate:metadata:labels:app: vscope-serverspec:terminationGracePeriodSeconds: 330containers:- name: vscope-serverimage: europe-docker.pkg.dev/isl-vscope/release/vscope:latestimagePullPolicy: Alwaysenv:- name: JAVA_OPTSvalue: "-Xmx16g"ports:- name: httpcontainerPort: 80protocol: TCP- name: proxycontainerPort: 4445protocol: TCPresources:requests:cpu: "4"memory: 24Gilimits:memory: 24GivolumeMounts:- name: datamountPath: /datavolumes:- name: datapersistentVolumeClaim:claimName: vscope-data---apiVersion: v1kind: Servicemetadata:name: vscope-servernamespace: defaultspec:type: ClusterIPselector:app: vscope-serverports:- name: httpport: 80targetPort: httpprotocol: TCP- name: proxyport: 4445targetPort: proxyprotocol: TCPKeep one replica and
Recreate. Reuse the PVC when upgrading. For sizing, see System Requirements. -
Apply the manifest and wait for startup:
Terminal window kubectl apply -f vscope-server.yamlkubectl -n default rollout status deployment/vscope-server --timeout=600skubectl -n default get pvc vscope-dataExpect a running pod and a PVC with status
Bound. -
Configure the Ingress. Save the following as
vscope-ingress.yaml. ReplaceYOUR-INGRESS-CLASSwith your ingress class andvscope.example.comwith your hostname. Configure DNS to resolve that hostname to the ingress controller’s address.apiVersion: networking.k8s.io/v1kind: Ingressmetadata:name: vscope-servernamespace: defaultspec:ingressClassName: YOUR-INGRESS-CLASSrules:- host: vscope.example.comhttp:paths:- path: /pathType: Prefixbackend:service:name: vscope-serverport:number: 80Terminal window kubectl apply -f vscope-ingress.yamlkubectl -n default get ingress vscope-server -
Open
http://vscope.example.com/using your chosen hostname, then complete the license and administrator steps below. The example configures HTTP; configure TLS with your ingress controller and certificate provider to serve HTTPS.
Change the web address or port
Update the hostname in the Ingress manifest and DNS, then reapply the manifest. External listener ports are configured on your ingress controller.
Connect discovery proxies
The Service exposes TCP 4445 for proxies inside the cluster. In the same namespace, set the proxy’s master hostname to vscope-server and port to 4445. From another namespace, use vscope-server.<server-namespace> (for example, vscope-server.default). Follow Install the proxy, then approve it in vScope.
Check startup
If startup fails or vScope does not open, see Troubleshoot a container installation for log and event commands.
Register license
Section titled “Register license”- Provide your license code (from account manager or account portal).
- Offline? Upload a license file: see Register License.
Create setup admin account
Section titled “Create setup admin account”- Create the first administrator (for setup/recovery). Use SSO/AD later for regular users.
Sign in
Section titled “Sign in”- Open the vScope URL from your installation tab, using your chosen port or Ingress hostname.
- Sign in with the setup admin to complete installation.
Validate installation
Section titled “Validate installation”- Sign in is successful.
- Go to Discovery; the page should load with empty credentials/targets.
- Open Settings → About and verify license/edition is shown.
Troubleshooting
Section titled “Troubleshooting”- Internet Connectivity Issues? Recheck Ports used by vScope.
- Could not start the service? Check that the configured ports are available and review the startup checks in your installation tab.
Next steps
Section titled “Next steps”- Secure access/transport: set up SSO/IDP, Directory integration, HTTPS, and Email server.
- Then start collecting data: Add your first data source.