Windows Server 2019 – App Compatibility Feature-on-Demand
In Windows Server 2019, Microsoft is focusing on a couple of things. One of the things Microsoft wants to improve with Windows Server 2019, is the Windows Server Core experience. Bringing a great remote management experience with Windows Admin Center is one thing, the other feature which should improve the Server Core experience, is the Server Core App Compatibility feature-on-demand (FOD).
In the past, you might have some problems running an application that required a local GUI interaction on Server Core. Some of the applications you couldn’t install failed after the installation or didn’t work right. With the Server Core App Compatibility FOD, Microsoft improves this situation in Windows Server 2019 Core. FOD improves application compatibility of Windows Server Core by adding binaries and packages from Windows Server with Desktop Experience, without adding the Windows Server Desktop UI. To get more information on Feature on Demand (FOD), check out the Windows Server 2019 documentation.
Here are some Operating system components that are available within the FOD package.
- Event Viewer (Eventvwr.msc)
- Performance Monitor (PerfMon.exe)
- Resource Monitor (Resmon.exe)
- Device Manager (Devmgmt.msc)
- Microsoft Management Console (mmc.exe)
- File Explorer (Explorer.exe)
- Internet Explorer
- Windows PowerShell (Powershell_ISE.exe)
- Failover Cluster Manager (CluAdmin.msc)
Like the new Windows Container Image, the Server Core App Compatibility FOD should make sure you can run more apps on Server Core.
How to install Windows Server 2019 App Compatibility Feature-on-Demand
First, you will need to download the Feature-on-Demand ISO and save it on your server. Mount the ISO Image:
Mount-DiskImage -ImagePath PATH.iso
After that, you can use DISM to add the FOD package to your Windows Server 2019, installation. Just be sure, this only works on Windows Server Core, Desktop Experiences already has these binaries. Depending on the packages and language you are using, you might need to change the name of the cab file, to the one you are adding.
# For the App Compatibility Package DISM /online /add-package:"Microsoft-Windows-InternetExplorer-OptionalPackage~31bf3856ad364e35~amd64~~.cab" # For Internet Explorer Dism /online /add-package:"DISM /online /add-package:"Microsoft-Windows-InternetExplorer-OptionalPackage~31bf3856ad364e35~amd64~en-US~.cab"
You will need to restart your server. After the restart, you can run tools like explorer.exe, Device Manager, and many more on Windows Server Core.
When to use which Windows Server 2019 Installation Option
With Windows Server 2019 you now get a couple of installation options, I tried to summarize this in this table:
|Windows Server Core||Server Core is the best installation option for production use and with Windows Admin Center remote management is highly improved.|
|Windows Server Core with Server Core App Compatibility FOD||Workloads, and some troubleshooting scenarios, if Server Core doesn’t meet all your compatibility requirements. You can add an optional package to get past these issues. Try the Server Core App Compatibility Feature on Demand (FOD).|
|Windows Server with Desktop Experience||Windows Server with Desktop Experience is still an option and still meets like previous releases. However, it is significantly larger than Server Core. This includes larger disk usage, more time to copy and deploy and larger attack surface. However, if Windows Server Core with App Compatibility does not support the App, Scenario or Administrators still need the UI, this is the option to install.|
Windows Server 2019 Insider Preview for Server Core App Compatibility FOD
As of today, Windows Server 2019 is still only available as Windows Server Insider Preview. You can download the Windows Server 2019 Preview and the App Compatibility Feature-on-demand from the Windows Server Insider download page.