Setup
Prerequisites
The basic environment required for this setup:
- A Linux/Unix system
- Ubuntu/Debian is preferred. Mac OS X (Darwin) should also work.
- Docker Desktop
- Visual Studio Code
- Git and GitHub
This guide will use the following environment:
- Windows 10 Host OS (should work on Windows 11 as well)
- Windows Subsystem for Linux WSL 2
- Ubuntu LTS on WSL 2
- You do not need to install a GUI package as described in this guide
- Git installed on Ubuntu in WSL 2
- You may also wish to either set up Git Credential Manager to share Git credentials with Windows or set up SSH Keys to communicate with GitHub
- Docker Desktop with WSL 2 Backend
- Visual Studio Code and WSL Extension
- You may also wish to install the Dev Containers extension. This guide will not use it, but that is an alternative way to develop within a container.
Optional
To match the environment seen in the screenshots/videos, you can install these optional items:
- Windows Terminal
- FiraCode font in VSCode
- Zsh terminal and Oh My Zsh in Ubuntu
- Powerlevel10k Zsh theme
- Meslo Nerd Font is recommended
Other Systems
This guide should generally work for developing on both Ubuntu/Debian Linux systems as well as Mac OS X systems. Some modifications will need to be made, but in general you want to have Visual Studio Code, Docker Desktop, and Git installed.
Likewise, deployment will mostly use GitHub actions but I will also include information for using GitLab runners.