주어진 명령으로 컨테이너를 시작하는 올바른 방법은 무엇입니까?

주어진 명령으로 컨테이너를 시작하는 올바른 방법은 무엇입니까?

네트워크 트래픽을 시뮬레이션하기 위한 컨테이너 세트를 만들고 싶습니다. 각 컨테이너 내에서 다른 네트워크 지연을 설정하고 싶습니다. 이제 컨테이너에 로그인한 후 다음 명령을 사용하여 수동으로 수행합니다.

 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

이 명령의 출력(있는 경우)은 표준 출력으로 리디렉션됩니다.

관련 정보