与えられたコマンドでコンテナを起動する正しい方法は何ですか?

与えられたコマンドでコンテナを起動する正しい方法は何ですか?

ネットワークトラフィックをシミュレートするためのコンテナセットを作成したいと思います。各コンテナ内で異なるネットワーク遅延を設定したいと思います。コンテナにログインしたら、次のコマンドを使用して手動で実行します。

 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

このコマンドの出力(存在する場合)は標準出力にリダイレクトされます。

関連情報