Installation on Windows
GMT can only run on Windows with the Windows Subsystem for Linux (WSL). Before installing GMT make sure you have a working WSL environment.
With WSL you are working with a real Linux distribution (e.g. Ubuntu). Therefore, the most installation steps are equal to the ones documented in Installation on Linux →. On this page we only document the things that are different.
If you ever get stuck during this installation, be sure to reboot WSL once. It may help to correctly load some configurations and/or daemons.
Docker Desktop for Windows
Docker provides a great installation help on their website: https://docs.docker.com/desktop/install/windows-install/
You can just use the Docker Desktop for Windows bundle. Make sure the WSL 2 feature is enabled.
Setup
Before following the setup instructions given in Installation on Linux →, you have to first change your WSL configuration.
Change WSL config
Required changes:
- Disable automatic generation of hosts file
- Enable systemd (install script currently enforces the usage of systemd)
sudo vim /etc/wsl.conf
Add the following lines:
[network]
generateHosts = false
[boot]
systemd = true
Restart:
wsl.exe --shutdown
References:
- https://devblogs.microsoft.com/commandline/automatically-configuring-wsl/
- https://learn.microsoft.com/en-us/windows/wsl/systemd
Add hosts entries to Windows
To be able to access the frontend and the API of the GMT, you have to add the URLs to the hosts file on your Windows host system: C:\Windows\System32\drivers\etc\hosts
127.0.0.1 green-coding-postgres-container
127.0.0.1 api.green-coding.internal metrics.green-coding.internal
Metric providers
With WSL it is not possible to measure anything except the CPU utilization via procfs (cpu.utilization.procfs.system.provider
).
- See the provider documentation for it: CPU Utilization Procfs Reporter →
Additionally to these measurement provider you can however enable the Cloud Energy machine power estimation based on an ML XGBoost model.
- See the provider documentation for it: Cloud Energy Machine Power Estimation Reporter →
You have to disable all other providers in your config.yml
.