Requirements
Chocolatey Clients
With Chocolatey clients, we ensure that Chocolatey is going to run with low memory footprints because you will have all aspects of things you will need to manage and different space and memory available across all of those clients. Chocolatey has a very wide reach into where it can be installed.
For Chocolatey clients, you will need the following:
- Windows 7+/Windows 2003+ (Server Core also, but not Windows Nano Server)
- Windows PowerShell v2+ (not PowerShell Core aka PowerShell 6 yet)
- .NET Framework 4.x+
Chocolatey Components
- Chocolatey CLI aka choco (or choco.exe) is a client (not a Windows service) that provides the core of Chocolatey and the installation store for locally installed packages. This is important as Chocolatey manages packages, not Programs and Features directly - Programs and Features is limited only to software that has "installers" and Chocolatey treats all aspects of Windows software as first class citizens (zips, scripts, binaries, installers), thus it needs to track and manage those things separately.
- Chocolatey GUI is an application that runs when a user runs it (also not a Windows Service).
- Chocolatey Agent (aka chocolatey-agent) is a Windows service available in Chocolatey for Business. It is used for Self-Service Installation and Chocolatey Central Management.
Space Requirements
- Chocolatey CLI has an impact of 15 MB on default install plus the space the installed packages use up.
- Chocolatey GUI takes up another 50-100 MB of space on default installation.
- Chocolatey Agent (aka chocolatey-agent) is a Windows service available in Chocolatey for Business - it has an impact of about 10 MB.
We recommend enough free space for the applications you will install plus another 1 GB for allowing Chocolatey to process that. You will want to turn on Package Reducer (commercial editions) if you have it to really reduce the impact of embedded packages, which bring reliability but also increase footprint (unless you have Package Reducer). If you don't have Package Reducer and you are embedding binaries into nupkgs, you will need 3 times the space of what you are installing unless you explicitly clean up the extracted installers/zips in your automated scripts - then you will need 2x the space when considering the nupkg will still contain embedded binaries (and the nupkg must stick around). Unfortunately, this is going to be a calculation to understand exact space requirements and it really depends on what you will install.
Memory Requirements
- Chocolatey CLI only runs when called. It falls into managed memory thus can work in environments with low amounts of memory provided that they have enough memory available to manage software installations.
- Chocolatey GUI only runs when the application is open and is also in managed memory. It can work on systems with low amounts of memory.
- Chocolatey Agent (aka chocolatey-agent) - it is always running but has a very low footprint unless it is processing something.
At least 2 GB of RAM at a bare minimum, but recommend at least 8 GB for managing installations.
Chocolatey Repository Servers
Unfortunately it's harder to make recommendations here as it is really dependent on the repository that you choose and what requirements they have. It varies from a Windows deployment to Linux deployed repositories, from Java-based, to .NET-based, to PHP, and Rust-based repositories. The requirements vary wildly, plus you may use those repositories that address multiple types of packages and would need to figure out the space available for that.
Have enough space for 10x the size of the installers and other software you will store. This will allow for some default growth. We would recommend 100 GB at a minimum.
We've compiled a list of requirements for commercial repository options. Chocolatey Simple Server (Chocolatey.Server) can be put on really minimum hardware that could be 1-2 GB of RAM, low CPU, and as little as 5 GB of space (number of packages you store will drive this). You will just want the network transfer to be fast.
Chocolatey Central Management
- Chocolatey for Business (C4B)
- Windows Server 2019 or later
- SQL Server 2019 or later
- PowerShell 5.1
- IIS set up and available
- dotnet-aspnetcoremodule-v2 version 16.0.23055 or later
- dotnet-6.0-runtime version 6.0.15 or later
- dotnet-6.0-aspnetruntime version 6.0.15 or later
The dotnet-6.0-runtime and dotnet-6.0-aspnetruntime packages must be the same version to prevent compatibility issues.