I, too, use VS Code with Dev Containers. But do not use the Templates / Features because in my experience they tend to be too many versions behind. I use a custom built set of Docker images. I wrote an article here that should help summarize some of the things I ran into early on: Bluefin - rely on OCI layer sharing for distrobox and devcontainer
For deployment, I currently use Raspberry Pi 4’s running Open Media Vault 7.x (with docker compose integration). Deploying to a different architecture than I used for development has forced me to think a little more deeply about a couple of additional things and I feel it also has been a valuable second testing step.
Note I have (before retirement) run k3s on 3 raspberry pi’s (plus my x86_64 laptop) which is also a beneficial learning tool. Keep in mind that x86_64, amd64 and aarch64 (mac and Raspberry Pi 4,5) are the most common archs out there… hint, hint
If your software can deploy and run on a mixture of those archs locally, then your deployment options in the cloud will be more flexible - read: more choices for cost containment.
Good luck!