少し前までは仮想化が流行っていましたが、
コンテナ技術が多くなってきました。
コンテナといっても、ほぼdockerを指すことが多いと思います。
仮想化はOSすべてをシミュレートすることになるため
やはりオーバーヘッドが大きくなります。
コンテナは仮想OS部分はなく、
アプリケーションの独立性を保つのに最低限のラッパー部分となります。
基本的にはLinux上での動作となりましが、
Windows上ではWSLを、MacOSでは仮想Linuxマシンを入れることで動作可能です。
ただ、Macは最近CPUがintelからapple 製のM系に変更になりましたので、
それぞれ用のものを使う必要がありますので注意してください。