在一台机器上模拟的服务器和客户端网络应用程序

Server and client network apps simulated in one machine

我想模拟一台服务器机器和几台通过 vpn 运行的客户端机器。我想在一台机器上测试服务器应用程序和客户端应用程序。

我可以在我的机器上使用一些 docker 应用程序 运行 来实现这一点吗?或者我应该使用 systemd-nspawn 之类的东西吗?

这取决于您希望实现的目标。如果您想执行端到端测试(例如,两个聊天客户端通过服务器连接并相互发送消息),那么 Docker 是一个很好的解决方案。如果您想进行性能测试,那么 Docker 不太适合(至少它本身)。

是的。使用 linking containers, exposing 和发布[发布端口容器可以相互通信或与主机通信。