Problem: Running Docker on ArchWSL doesn’t work by default. ArchWSL doesn’t allow systemd services.
systemctl start
on ArchWSL will result in an error. Update (June 2022): wsl-distrod is a better alternative to genie.
genie-systemd can be used to run systemd services like Docker. Note that Docker itself requires WSL2.
Genie, or genie-systemd, is a workaround to run systemd services in WSL2. It can be installed by downloading the .tar.zst
package from the project’s GitHub releases page.
Genie only works on WSL2. Not running WSL2? Here’s a guide on converting an WSL1 installation to WSL2.
I’ve found that genie works the best for my case. However, there are also other ways to get Docker and systemd working:
I am a web developer helping make the world a better place through JavaScript, Ruby, and UI design. I write articles like these often. If you'd like to stay in touch, subscribe to my list.