使用给定命令启动容器的正确方法是什么?

使用给定命令启动容器的正确方法是什么?

我想创建一组用于模拟网络流量的容器。在每个容器内,我想设置不同的网络延迟。现在,登录容器后,我正在使用此命令手动执行此操作:

 sudo tc qdisc add dev eth0 root netem delay 128ms

我希望它自动完成。现在我正在考虑这样做:

ssh root@container "my_commands"

但我正在考虑自动创建容器的实例(并不是说我要创建许多容器,每个容器都有不同的延迟),以便稍后我只需启动它。

配置它的正确方法是什么?

答案1

lxc-attach允许您在不登录的情况下在容器中运行命令。

lxc-attach -n container-name -- <command>

所以我想你需要运行:

lxc-attach -n container-name -- sudo tc qdisc add dev eth0 root netem delay 128ms

该命令的输出(如果有)将被重定向到您的标准输出。

相关内容