Windows Server 2016 offers a new installation option: Nano Server. Nano Server is a remotely administered server operating system optimized for private clouds and datacenters. It is similar to Windows Server in Server Core mode, but significantly smaller, has no local logon capability, and only supports 64-bit applications, tools, and agents. It takes up far less disk space, sets up significantly faster, and requires far fewer updates and restarts than Windows Server. When it does restart, it restarts much faster. For more details, follow this link.
NanoServerApiScan.exe scans a directory containing your binaries and reports an error if it finds an API that is not available in Nano Server. It even provides replacement API suggestions in many cases. NanoServerApiScan.exe requires .NET Framework version 4.0 or higher. For more details, follow this link.
For a list of available Nano Server APIs, please kindly refer to this link.
This is a brief example on how the image is tagged and does not represent every currently available tags.
-
Step 1 - Switch to Windows container:
-
Step 2 - Pull the docker image using Docker CLI:
docker pull kiazhi/nanoserver.apiscan
-
Step 3 - Inspect the container interactively using Docker CLI:
docker run --rm -it kiazhi/nanoserver.apiscan
-
Step 4 - Verify NanoServerApiScan help documentation within the container interactively:
NanoServerApiScan /?
-
Step 5 - Exit from the container:
exit
-
Step 6 - Copy files that will be assessed by NanoServerApiScan within the container interactively:
- Create a container using the
kiazhi\nanoserver.apiscan
image - Copy those local binary files to container C:\NanoServerAPIScan\Binary folder
- Start the container interactively
docker create --name NanoServerAPIScan -t -i nanoserver.apiscan docker cp /BinaryFilesFolderForScanning NanoServerAPIScan:/NanoServerAPIScan/Binary docker start -a -i NanoServerAPIScan
- Execute the
NanoServerApiScan.exe
executable againstC:\NanoServerAPIScan\Binary
folder using the Windows Kits
NanoServerApiScan /BinaryPath:. /WindowsKitsPath:..\WindowsKits
- Create a container using the
-
Step 7 - Exit from the container after assessment:
exit
EXCEPT AS REPRESENTED IN THIS AGREEMENT, ALL WORK PRODUCT BY DEVELOPER IS PROVIDED "AS-IS". OTHER THAN AS PROVIDED IN THIS AGREEMENT, DEVELOPER MAKES NO OTHER WARRANTIES, EXPRESS OR IMPLIED, AND HEREBY DISCLAIMS ALL IMPLIED WARRANTIES, INCLUDING ANY WARRANTY OF MERCHANTABILITY AND WARRANTY OF FITNESS FOR A PARTICULAR PURPOSE.